Как совместимо 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, и может быть проще создан.