LINUX.ORG.RU

Smalltalk - отличия современных версий от стандарта

 


0

1

Насколько я понимаю, все основополагающие источники по разработке на Smalltalk описывают в основном Smalltalk-80. А насколько современные версии языка отличаются от этого протухшего «стандарта»? Есть ли такие, что опираются на стандарт ANSI Smalltalk (если он вообще был принят, я что-то не пойму)? И где можно увидеть более-менее вменяемый список расширений? Интересуют на данный момент в принципе только Pharo и Cincom VisualWorks.

★★★

Последнее исправление: ovk48 (всего исправлений: 1)

Насколько я понимаю, все основополагающие источники по разработке на Smalltalk описывают в основном Smalltalk-80

Неправильно понимаешь. Smalltalk-80 описывает серия книг по Smalltalk-80, это те самые Blue Book, Orange Book и т.п.

Design Patterns Smalltalk Companion ссылается на самые разные (около)современные реализации - Visual Smalltalk, VAST, VW.

А так по каждой реализации можно свою книжку найти.

А насколько современные версии языка отличаются от этого протухшего «стандарта»?

Сам ты протухший. Мало отличаются, базовые классы и методы не изменились, иерархия классов в основном сохранилась.

Что у современных версий разное - так это более прикладные вещи, как работа с файлами, сетью, UI. Естественно это всё отличается от описанного в том же Blue Book, который вышел, емнип, в 1982.

Есть ли такие, что опираются на стандарт ANSI Smalltalk (если он вообще был принят, я что-то не пойму)?

АПВС

И где можно увидеть более-менее вменяемый список расширений?

Тут не стоит забывать, что Smalltalk - не совсем язык, вернее и язык конечно тоже, но в основном это именно интерактивная среда. Язык сам строится на трёх конструкциях: отправка сообщения, присваивание, возврат значения. __ВСЁ__. Остальное - уже (можно сказать) стандартная библиотека, которая у каждой реализации в целом-то похожа, но всё равно своя. Какие расширения ты тут хочешь увидить?

Да, некоторые реализации из коробки поддерживают пространства имён (GNU Smalltalk, VW и ЕМНИП St/X). У других это реализовано пакетом. Некоторые реализации поддерживают трейты (Pharo, etc), некоторые - аннотации типов, но это опять же как правило пакеты.

yoghurt ★★★★★
()
Ответ на: комментарий от yoghurt

Под расширениями я имею в виду расширения стандартной библиотеки, а не языка.

Выходит, полезней читать мануалы к конкретным современным реализациям, а не Blue Book и Inside Smalltalk?

ovk48 ★★★
() автор топика
Ответ на: комментарий от ovk48

Полезно читать все. Блюбук даст хорошее понимание основы всего, да и просто интересен как история.

yoghurt ★★★★★
()

Но какая разница?

Ты так спрашиваешь, как будто собрался писать на Smalltalk программы.

anonymous
()
Ответ на: комментарий от anonymous

Ну так-то нет, конечно, но желание ознакомиться есть, а ознакамливаться в условиях дефицита времени лучше все-таки с максимально актуальным положением дел.

ovk48 ★★★
() автор топика
Ответ на: комментарий от ovk48

Но зачем тебе понадобился мёртвый язык в XXI веке, объясни?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.