Русская Википедия:Guile

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Infobox Software GNU Guile — реализация языка программирования Scheme, рекомендованная в качестве скриптового языка, встраиваемого в программные продукты проекта GNU[1]. Используется в таких продуктах, как Guix, GDB, GnuCash и LilyPond.

Распространяется на условиях LGPL и реализует стандарт R5RS[2]. С R6RS имеется ряд несовместимостей, однако стандартная библиотека Scheme, определённая этим стандартом, реализована[3]. Язык доступен в виде готового к работе интерпретатора guile, с поддержкой интерактивного режима[2] и подключаемой к приложениям, в которые нужно встроить язык сценариев, библиотеки libguileлинукс-дистрибутивах обычно устанавливаемой в виде пакета guile-devel[2]).

Создан в начале 1990-х годов как альтернатива языку Tcl, набиравшему популярность в качестве встраиваемого скриптового языка, но не одобренного Столлманом[4], который посчитал Tcl недостаточно мощным, а необходимость знакомства с новым синтаксисом, хоть и построенным по близким к лиспу принципам, но заметно отличающегося — излишней. Взамен он предложил использовать интерпретатор Scheme. Подходящего интерпретатора не было, его взялся реализовать Том Лорд (Шаблон:Lang-en). В качестве основы он использовал Шаблон:Iw (Scheme in One Day) и ядро Шаблон:Iw, написанное Обри Джаффером (Шаблон:Lang-en). Название Guile предложил в ходе обсуждения в соответствующей Usenet-группе Ли Томас (Шаблон:Lang-en2) как аббревиатуру от Шаблон:Lang-en (повсеместно применяемый интерактивный язык для расширений GNU), и, в то же время, Шаблон:Lang-en дословно переводится как «обман; вероломство, коварство; хитрость, уловка»[2].

Примечания

Шаблон:Примечания

Литература

Ссылки

Шаблон:Лисп