Вопрос

На самом деле здесь нет вопроса как такового относительно Smalltalk и Scheme.Я начал играть в Smalltalk только 3 недели назад и метался между Squeak и Pharo.Оба потрясающие, мне трудно поверить, что smalltalk не самый популярный язык.Все в одном изображении. Мне не нужна интерактивная командная строка, редактор, веб-страница для Rdoc и т. д. Я просто делаю это, щелкаю и бездельничаю, черт возьми, если я это сделаю UiDesigner Open. Я получаю приложение с графическим интерфейсом, близкое к QT4.Для моих небольших баз данных есть утилиты, такие как магма.

В любом случае, я также начал играть со Scheme в Racket, и, хотя там задействовано много (), он все равно был очень простым;с самого начала это кажется вполне логичным.Единственное, что я обнаружил, это то, что существует множество диалектов схем/Лиспа.Рэкет тоже кажется довольно простой средой, однако, в частности, похоже, есть Chicken и MIT Scheme.

Есть ли особая причина, по которой мне следует использовать Chicken вместо Racket или MIT?Или наоборот.Хорошая поддержка системы, поддержка базы данных или графического интерфейса... и т. д.

PS Я явно не выбираю самые популярные языки, но мне весело :-)

Это было полезно?

Решение

И ракетка, и курица имеют хорошую поддержку библиотеки. (GUI, база данных, сеть и т. Д.). Если вам просто весело, я предлагаю вам пойти с ракеткой. Он имеет полную поддержку стандартов схемы (R5RS, R6RS) и хорошую документацию. Есть Несколько хороших Книги программирования которые используют ракетку в качестве языка реализации. С другой стороны, если вы ищете портативность своего скомпилированного кода в широком ассортименте аппаратного обеспечения, курица может быть лучше, чем ракетка.

Другие советы

Если для вас важен R6RS, выбирайте Racket.Курица (среди прочего) не соответствует и не будет соответствовать требованиям R6RS, поскольку существует широко распространенное мнение, что она имеет недостатки.Над R7RS работают, и он должен решить некоторые проблемы.Что касается соответствия R5RS, Chicken изо всех сил старается придерживаться стандарта (в руководстве есть две страницы с перечислением различий).Рэкет настолько отличается от других, что некоторое время назад отказался от названия «Схема».

Тем не менее, я предпочитаю курицу.Куриный FFI просто великолепен (особенно с яйцом Bind).Поскольку он скомпилирован в C, взаимодействие с библиотеками C очень просто.Я даже добавил некоторые исходные файлы среды выполнения Chicken (процесс, описанный в руководстве) непосредственно в приложение для iPhone, над которым я работаю, вместе с кодом Scheme, переведенным на C, это работает как шарм.Таким образом нет необходимости создавать среду кросс-компиляции, поскольку все это C и скомпилировано XCode.

Курица имеет много яиц и растет с каждым днем.Предлагаю заглянуть на страницу с яйцами. текст ссылки чтобы узнать, есть ли в нем то, что вам нужно.Если да, то я настоятельно рекомендую попробовать.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top