Как-то раз, услышав про то, что в смолтоке есть классы, я подумал, что автор языка выбрал ошибочное направление. Где то в википедии, я читал, что селф перенял у смолтока идеи объектов, но выкинул классы, и я подумал, что тру — это селф, а смолток ушел с праведного пути. Однако я ошибался. Оказывается в смолтоке не было никаких классов, то, что там называлось классами, по-факту есть прототипы. То есть в смолтоке не было классов. Вообще. Это просто терминологическое недоразумение.
Осознать мне это помог анонимус, который однажды, оставив коммент в моей теме, дал ссылку на документ, в котором я нашел следующий отрывок (цитата из чего-то)
«То, что мы рассмотрели, не отвечает на главный вопрос: как объект, получивший сообщение, находит метод, который надо выполнить? Остановимся подробно на механизмах поиска по сообщению необходимого метода и его выполнения. Итак, как уже отмечалось, выполнение любого действия в системе Смолток осуществляется с помощью посылки объекту сообщения. Получив сообщение, получатель ищет метод с соответствующим сообщению шаблоном, начиная поиск обычно со своего класса. Если объект — класс, то метод ищется среди методов класса, а если объект — экземпляр класса, то среди методов экземпляра класса. Если метод с соответствующим шаблоном находится в классе получателя, то он выполняется, и как результат его выполнения обязательно возвращается некоторый объект, который информирует того, кто послал сообщение, что выполнение метода завершилось с содержащимся в возвращаемом объекте результатом. А если метода с нужным шаблоном нет в классе? Тогда к работе подключается иерархия классов, а точнее, цепочка суперклассов для класса объекта-получателя. Если в классе подходящего метода нет, метод ищется в ближайшем его суперклассе. Если нужного метода нет в суперклассе, то поиск продолжается в следующем по иерархии суперклассе и так далее, пока не доберемся до класса Object.»
Таким образом, в JS реализована точная копия смолтока. Семантически, JS — это и есть смолток, правда с ненужными шлюхами. Странно, почему об этом все молчат в тряпочку.