| GNU Guile | |
|---|---|
| Entwickler: | Free Software Foundation |
| Aktuelle Version: | 1.8.3 [1] (16. Oktober 2007) |
| Betriebssystem: | GNU |
| Kategorie: | Programmiersprache |
| Lizenz: | GPL |
| Website: | gnu.org: guile |
GNU-Guile (kurz Guile, selten Guile Scheme) ist ein Interpreter für die Programmiersprache Scheme, einem LISP-Dialekt. Guile ist als Programmbibliothek implementiert, die in andere Programme eingebunden werden kann, um deren Erweiterbarkeit zu fördern. Guile wurde mit dem Ziel geschaffen, als „offizielle“ Skript- und Erweiterungssprache des GNU-Projektes zu dienen, auch wenn noch längst nicht alle GNU-Projekte Guile unterstützen und der Script-FU von GIMP auf die „Konkurrenz“ TinyScheme setzt.
Der Guile-Interpreter erweitert Scheme unter anderem um folgende Fähigkeiten:
Es gibt auch noch zwei grundsätzliche Unterschiede zur Scheme Definition([Clinger]):
'() unterscheidet sich nicht von falsch #fIn Zukunft soll Guile auch andere Skriptsprachen wie Perl und PHP unterstützen. Zur Zeit wird jedoch CTAX unterstützt, eine C-ähnliche Sprache. Eines der zukünftigen Ziele von Guile ist es, aus jeder beliebigen anderen Sprache nach Scheme „übersetzen“ und aus diesen portablen Bytecode erzeugen zu können; Guile wäre dann eine sprachneutrale Laufzeitumgebung.
Guile unterstützt XML, XPath, und XSLT, die Forms von SXML, SXPath und SXSLT. Die S-expression-basierte XML Verarbeitung wird ebenfalls unterstützt.
Inhaltsverzeichnis |
Die Ursprünge von Guile liegen in einer Diskussion, die von Richard Stallman gestartet wurde und die später unter dem Namen „the Tcl Wars“ bekannt geworden ist: Stallman behauptete, dass Tcl nicht leistungsfähig genug sei, um als Erweiterungsprache zu dienen. Aus diesem Grund startete er das Guile Projekt.[2] Damals existierte zwar die Scheme-Definition, aber es gab noch keinen Interpreter, so wurde mit Guile der erste einigermaßen standardkonforme Interpreter geschaffen. Zu nennen ist Tom Lord, einer der Hauptprogrammierer der damals bei Cygnus Solutions (später Red Hat) beschäftigt war.
Die ersten Versionen wurden vor 1995[3] von SIOD („Scheme In One Day“[4]) und dem SCM-Interpreter[5] abgespaltet.