Этот вопрос меня заинтриговал, поэтому я вернулся и прочитал несколько оригинальных статей о концепции. Похоже, это началось в середине 1980-х годов в мире Smalltalk, но в конечном итоге стало одним из основополагающих принципов Self . Много позже Javascript также принял его.
Аргумент, выдвигаемый в газетах, заключается в том, что его легче учить. Там действительно не предлагается никаких технических выгод, кроме обучения. Все статьи объясняют, как он так же выразителен, как и язык классов, но намного легче выучить. Люди естественно думают о вещах конкретным образом, а не абстрактно. Мы думаем о слоне, которого мы видели в зоопарке, а не об общем «слоне». Когда мы видим других слонов, мы классифицируем их как отличия от первого. Язык на основе прототипов облегчает это мышление. Думайте об этом как о программировании с помощью дифференциала.
Это достаточная причина, чтобы использовать его на языке? Может быть. За 25 лет, прошедших с тех пор, как идея впервые начала распространяться, я бы сказал, что абстрагированные концепции, такие как ОО на основе классов, не слишком сложны для изучения большинством людей. С другой стороны, возможно, существует потребность в языке программирования (например, Javascript), который проще, и это может быть способом сделать это.
Если интересно, вы можете начать с этой статьи о себе.