Эта статья имеет рейтинг List-class по шкале оценки контента Википедии . Она представляет интерес для следующих WikiProjects : | ||||||||||||||
|
Кто-нибудь, кто знаком с Smalltalk или Objective-C, должен добавить их в сравнения. Спасибо, -- 164.67.59.123 ( talk ) 01:56, 20 октября 2008 (UTC)
Я знаком, но все, что я здесь вижу, это не Smalltalk.
Эта страница в основном состоит из синтаксического сахара. В Smalltalk (почти) нет синтаксического сахара.
САМАЯ важная функция Smalltalk:
состояние системы изменяется путем отправки сообщений объектам
Когда объект получает сообщение, он реагирует, выполняя метод, который является небольшой процедурой.
Этот метод, в свою очередь, отправляет другие сообщения другим объектам...
Поведение объекта определяется его классом (словарем методов, запускаемых сообщениями).
Вторая особенность Smalltalk:
все является объектом
включая:
Программный доступ к контексту выполнения в сочетании с использованием замыканий блоков позволяет реализовать мощную обработку исключений/сопрограмм и т. д. без какого-либо синтаксического сахара.
Сообщения используются повсеместно, в частности:
Вселенная объектов, образующих ограниченную систему, постепенно создается путем отправки сообщений уже существующим объектам.
Поскольку эти объекты включают потоки выполнения, систему можно рассматривать как набор взаимодействующих объектов.
Использование сообщения везде подразумевает, что Smalltalk IDE работает напрямую и активно в этой системе в памяти.
Образ этой памяти можно сделать моментальным снимком на диск в любое время и перезапустить позже (вспомните работу в режиме гибернации на ноутбуках).
Сообщения и правильно определенная виртуальная машина, работающая в объединенной системе, обеспечивают такие возможности рефлексии, как:
Эти возможности позволяют реализовать всю IDE на языке Smalltalk и встроить ее в систему (включая отладчик и компилятор).
Возможности рефлексии достаточно сильны, так что сам синтаксис языка можно оперативно расширять/изменять.
Где эти функции вписываются в эту страницу.
С чем их можно сравнить? — Предыдущий неподписанный комментарий добавлен 77.204.207.50 (обсуждение) 23:39, 16 февраля 2011 (UTC)
Я удивлен, что Lisp не упомянут. Я не знаю достаточно, чтобы быть полезным, но, вероятно, его следует включить. — Предыдущий неподписанный комментарий, добавленный Aero-Plex ( обсуждение • вклад ) 21:04, 2 октября 2011 (UTC)
В Java нет метода «dispose» — указанная информация неверна и должна быть удалена. См. Object Documentation. — Предыдущий неподписанный комментарий добавлен 98.213.109.106 ( обсуждение ) 05:32, 19 февраля 2013 (UTC)
Что должен показать такой синтаксис: class *variable = new class«(parameters)»;
? Ключевое слово class
не является именем типа, поэтому синтаксис предложения недействителен. Возможно, если «
и »
намереваются окружить метасинтаксическую переменную, это может быть понятно, но тогда это должно быть «class_name» *variable = new «class_name» «(parameters)»;
. Но почему бы просто не использовать курсив вместо «
и »
? Rursus dixit. ( m bork 3 !) 02:41, 10 января 2023 (UTC)