2026-03-25 Знакомство с Cuis Smalltalk
Много раз я пытался познакомиться с таким языком программирования как Smalltalk. Эксперименты были с его современными реализациями - Squeak и Pharo, но каждый раз меня отпугивала их непохожесть на привычный мейнстрим.
Основные моменты, которые вызывали диссонанс:
- В Smalltalk код хранится не в файлах, а внутри образа (снапшота памяти). Это ломало классический паттерн разработки: редактор -> терминал.
- Яркие темы по умолчанию и специфичная графика в Squeak создают ощущение, что ты попал в 90-е, хотя под капотом скрывается одна из самых мощных сред для живой разработки.
- Да и просто непонятность, как же этим пользоваться и с чего вообще начать.
Но Smalltalk - это не просто язык, это среда обитания разработчика. Здесь код и данные живут в одном процессе, правки применяются на лету, а отладчик позволяет переписать логику на ходу, не перезапуская приложение. Это целая философия, которая оказывается невероятно удобной, если дать ей шанс.
Свой шанс я нашел в реализации Cuis Smalltalk. Это форк Squeak, который стремится к минимализму. Cuis оказался гораздо дружелюбнее для новичка, особенно благодаря наличию The Cuis Book. После ее прочтения исчезает большинство "магических" непоняток, и становится видна стройность системы.
Но был один минус: по умолчанию Cuis выглядит довольно ярко и, скажем так, "по-детски":
В попытках это исправить родился мой первый пакет для Cuis Smalltalk- Cuis-Smalltalk-XCodeTheme.
Он включает несколько цветовых схем, вдохновленных Apple Xcode:
- XCodeThemeLight - Светлая
- XCodeThemeLightRounded - Светлая с закругленными элементами интерфейса
- XCodeThemeDark - Темная
- XCodeThemeDarkRounded - Темная с закругленными элементами интерфейса
Теперь Cuis выглядит более строго и современно, на мой взгляд:
Пакет устанавливается очень просто:
- Скачайте из репозитория файл пакета
XCodeTheme.pck.st. - Перетащите его на открытое окно Cuis. Пакет автоматически загрузится в ваш образ.
- В окне
Workspace(или через настройки) выполните код для применения нужной темы:
XCodeThemeLight beCurrent.
- Наслаждайтесь результатом :)
Теперь, когда визуальный барьер снижен, ничто не мешает погружаться в мир живых объектов и отладки на лету. Возможно, это будет та самая "точка входа" в Smalltalk, которую я так долго искал.


