Какова лучшая реализация Scheme для сценариев оболочки (sys-admin)? - PullRequest
3 голосов
/ 22 октября 2009

Я прошел через академический материал Scheme (читай SICP, The Little Schemer, The Seasoned Schemer, TSPL) и некоторое время играл в Scheme как игрушку.

Но я хочу стать практичным. Сегодня мне нужно было написать сценарий оболочки, чтобы выполнить некоторую пакетную обработку файлов, и подумал «почему бы не сделать это в Scheme?». Я сделал, и это была радость.

Теперь я вынужден задаться вопросом, как лучше всего реализовать вещи типа сценариев оболочки. Я знаю, что все реализации отличаются с точки зрения того, что они реализуют за пределами R5RS. (По сути, они отличаются всеми полезными и практическими расширениями, которые вы бы хотели использовать в языке сценариев).

Так что я хотел бы выбрать одну реализацию и придерживаться ее. Я ищу то, что:

  1. Является кроссплатформенным (Linux, OS X, Windows).
  2. Имеет расширения, которые полезны в повседневных сценариях оболочки, и эти расширения являются частью базовой установки.
  3. Прост в установке. (например, есть несколько предварительно собранных двоичных файлов, и / или это стандартный пакет во многих дистрибутивах.)
  4. Активно развивается, с активным сообществом.
  5. Имеет поддержку Unicode.

До сих пор я использовал Gambit. Кажется, удовлетворяет вышеуказанным ограничениям. PLT кажется излишним. Хотите знать о Guile, MIT / GNU и т. Д.

Ответы [ 3 ]

4 голосов
/ 22 октября 2009

PLT Scheme соответствует всем вашим критериям. Поскольку, похоже, вы уже это знаете, вам следует использовать пакет MzScheme . MzScheme - среда выполнения, поверх которой построен весь PLT.

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

4 голосов
/ 22 октября 2009

Вы слышали о scsh ? Я не использовал его, но это звучит очень похоже на то, что вы хотите.

2 голосов
/ 23 октября 2009

Я рекомендую Гош , что:

  1. Работает в Linux, OS X, Windows w / Cygwin и некоторые другие UNIX-подобные платформы
  2. Базовая установка содержит POSIX-совместимые системные библиотеки и полезные модули, такие как сетевые протоколы, файловая система, DBM, многопоточность и т.д ...
  3. Доступно несколько систем пакетов, таких как MacPorts, apt-get, yum (или просто скажите configure, make и make install),
  4. Существует активный список рассылки на английском и японском языках,
  5. Поддерживает UTF-8 в качестве внутренней кодировки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...