Как совместимо GNU Smalltalk с Squeak

Я работаю над приложением в скрипе, которое вообще не требует графики, все просто манипулирует данными. Проблема в том, что я работаю в довольно консервативной среде, и я не думаю, что смогу продать приложение squeak своим менеджерам (я чувствую себя яркими цветами, круглым интерфейсом и общим "what-the-heck-is-that" "чувство скрипа отпугнет их). Поэтому я рассматриваю возможность запуска приложения под GNU Smalltalk, поскольку более" традиционный" интерфейс командной строки с меньшей вероятностью отпугнет заинтересованных сторон.

Итак, кто-нибудь может предоставить или указать мне список или набор того, какие функции/классы являются или несовместимы между Squeak и Gnu Smalltalk. Другими словами, насколько сложно будет переносить приложение из одного в другое (опять же, полагая, что его не графический, так что не нужно беспокоиться о морфике)?

Спасибо!

Ответ 1

Я согласен на 100% с igouy; в дополнение к этому основным отличием будет класс файловой системы. GNU Smalltalk больше похожа на то, что вы получаете с пакетом Squeak Rio.

Вы можете преобразовать свой код из Squeak в GST с помощью gst-convert, который также позаботится о некоторой разнице.

Ответ 2

Существует стандарт ANSI Smalltalk (http://www.smalltalk.org/versions/ANSIStandardSmalltalk.html). Gnu, похоже, является полной реализацией стандарта (см. Gnu Wiki), и Squeak кажется довольно совместимым (см. Squeak Wiki). Поэтому придерживайтесь стандарта, и вы должны хорошо себя вести.

Ответ 3

Реализация GST даст вам гораздо лучший ответ, чем мы можем - просто попробуйте - напишите свой код и посмотрите, что не с GST.

Я не знаю, насколько обновлен Розетта "Инструмент обмена кодами поперечного диалекта Smalltalk" , но это может помочь.

Вот некоторые незначительные отличия, которые были выровнены, чтобы облегчить игру в тестах - GNU Smalltalk:: Squeak

Когда вы сталкиваетесь с конкретными проблемами, спросите о них в списке рассылки GNU Smalltalk.

Ответ 4

В дополнение к другим предложениям убедитесь, что ваши тестовые примеры SUnit обновлены; гораздо проще найти какие-либо недостающие методы в GNU Smalltalk, чтобы ваше приложение использовало этот способ.

Ответ 5

Фаро выглядит более профессионально и может помочь. Или, если у вас менее 4 ГБ данных, Gemstone. Пользовательский интерфейс Seaside выглядит так же, как и ASP.NET MVC или Rails, и может быть проще создан.