Насколько совместим GNU Smalltalk с Squeak - PullRequest
11 голосов
/ 19 мая 2009

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

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

Спасибо!

Ответы [ 5 ]

5 голосов
/ 24 мая 2009

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

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

5 голосов
/ 20 мая 2009

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

4 голосов
/ 23 июля 2009

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

4 голосов
/ 20 мая 2009

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

Я не знаю, насколько актуальна Rosetta "Инструмент для обмена кодами на малых диалектах с кросс-диалектом" , но он может помочь.

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

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

2 голосов
/ 19 мая 2009

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

...