Re[2]: О смолтоке
От: dsorokin Россия  
Дата: 19.05.24 09:23
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Да, смоллтолк крутейший язык. На мой взгляд, это такой упрощенный, объектно-ориентированный лисп. Он позволяет быстро создавать DSL и писать на нем.


Б>Но этот язык "был", сейчас его время ушло. Для промышленной разработки у него есть неустранимые недостатки:

Б>1. Библиотеки. В языке отсутствует модульность и неймспейсы, все классы живут в одной среде. Как интегрироваться с имеющимися библиотеками на си? Как создавать и распространять библиотеки и фреймворки?
Б>2. Инструменты разработки. С языком идет среда разработки, но она сильно интегрированная с самим языком. Да, это сильно меняет способ разработки, упрощает и делает ее более интерактивной. Но как расширять эту среду, как делать линтеры, анализаторы, профилировщики и т.п.?

Немного поигрался с Pharo. Там есть интеграция с Git. Можно распространять код через гитовые репозитории. Есть в интернете свой репозиторий, заточенный под смолток. Распространение библиотек — по-моему решаемая вещь.

Неймспейсы есть в VisualWorks, к которому нас не пущают (не открывают сайт). Когда-то лет 13-15 назад я с ним игрался. Мне VisualWorks понравился, правда тогда неймспейсов, возможно, что не было, или я не обратил внимания.

Судя по книжке по установке Seaside, нейсмспейсы в VisualWorks могут быть похожи на пакеты Common Lisp с той же идеологией импорта-экспорта символов, но я видел только издалека по короткому упоминанию.

И еще я заметил, что неймспейсы сейчас активно добавляют в Dolphin Smalltalk, который сделали бесплатным опенсорсом. Он только под винду, но GUI там шикарный, и есть возможность создания исполняемых двоичных файлов (как в тех же LispWorks и Allegro CL).

В принципе, даже если бы сделали неймспейсы по подобию пакетов из лиспа, то этого было бы вполне достаточно.

Для интеграции с языком C, я видел в Pharo вещи из FFI. Не вникал, но внешне похоже на привычный FFI.

На счет инструментов разработки не совсем понял, почему это настолько важный недостаток, да и недостаток ли.

В Pharo меня больше всего смутил способ деплоя десктопных приложений. Похоже, что нужно таскать с собой виртуальную машину, а еще нужно самому в полуручном режиме убирать из образа все лишнее. В итоге получится довольно увесистый архив, хотя жаберы/скалисты тоже кладут почти всегда в свои инсталяторы виртуальную машину джавы. Да и размером архива сейчас в 2024-м никого не удивишь, но все же!

Что касается VisualWorks, то он вроде как заточен под деплой десктопных приложений. А еще создавать приложения умеет Dolphin Smalltalk, о чем я написал выше.

Б>Сейчас у смоллтолка нет киллер-фичи. Да, жаль


Я сейчас офигеваю от концептуальной простоты смолтока, помноженной на его выразительность. Может быть, меня зацепит, как когда-то зацепили лисп и хаскель
smalltalk
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.