Hacker News Digest

Тег: #pharo

Постов: 2

Ruby and Its Neighbors: Smalltalk (noelrappin.com)

Smalltalk оказал значительное влияние на Ruby, хотя его синтаксис практически не перешёл в Ruby. Основное влияние проявилось в объектно-ориентированных принципах, особенно в идее, что все данные являются частью объектной системы. В отличие от Perl, автор статьи работал с Smalltalk несколько лет и считает его одним из любимых языков, хотя вряд ли будет использовать его снова.

Smalltalk возник в Xerox PARC, той же команде, что создала графический интерфейс, Ethernet и лазерный принтер. В 80-90-х годах Smalltalk был коммерческим продуктом (ObjectWorks/VisualWorks), широко использовался в авиационной промышленности и для проектов, лёгших в основу экстремального программирования. В 1995 году бывшие сотрудники Xerox PARC в Apple выпустили Squeak — открытую реализацию Smalltalk, написанную в основном на самом себе, что обеспечило её лёгкую переносимость. В отличие от большинства современных языков, Smalltalk развивался независимо от Unix/C, представляя собой собственную операционную систему с уникальным синтаксисом и интегрированной средой разработки.

by jrochkind1 • 05 ноября 2025 г. в 15:24 • 218 points

ОригиналHN

#ruby#smalltalk#object-oriented-programming#xerox-parc#squeak#extreme-programming#pharo

Комментарии (124)

  • Smalltalk-80 и его наследие: образ системы (image) как способ распространения состояния, но его нет в современных системах, что делает Smalltalk-80 уникальным.
  • Проблема в том, что Smalltalk-80 не имеет синтаксиса, который бы соответствовал современным ожиданиям, и это делает его непривлекательным для новых разработчиков.
  • Ruby унаследовал объектную модель Smalltalk, но не его среду разработки, что делает Smalltalk-80 уникальным в своем роде.
  • Сообщество Smalltalk активно разрабатывает Pharo и другие современные реализации, но они не могут конкурировать с уже устоявшимися языками, потому что не имеют большой экосистемы.
  • Проект, который начинал как Smalltalk-80, теперь может быть выжившимся только как встроенный язык в некоторых проприетарных системах.

SmallJS: Smalltalk-80 that compiles to JavaScript (small-js.org)

SmallJS — свободная реализация Smalltalk-80, компилирующаяся в JavaScript для браузеров и Node.js.

  • v1.7 уже доступна (GitHub).
  • Работа ведётся в файлах, а не образах; отлично сочетается с VS Code (подсветка, отладка).
  • Используются привычные JS-имена классов и методов; в комплекте обёртки для DOM, Express, БД, потоков.

Быстрый старт — примеры проектов и Todo-приложение.

Хотите помочь? Пишите на info@small-js.org.

by mpweiher • 24 августа 2025 г. в 09:29 • 129 points

ОригиналHN

#smalltalk#javascript#node.js#vscode#dom#express#amber#pharo

Комментарии (34)

  • SmallJS вызвал всплеск интереса; автор @Smalltalker-80 откликается на вопросы.
  • Проект файл-ориентирован, без образа; VSCode вместо браузерной IDE.
  • flavio81 и wild_egg сожалеют о потере «живого» Smalltalk-опыта и сложностях синхронизации образов в Lisp.
  • Playground SmallJS компилирует выражения прямо в браузере, но полноценной live-среды нет.
  • Упомянуты Amber (застой), Pharo (монолитная VM) и Chrome Workspace для хот-релоада.