GNU Guile
Guileはリチャード・ストールマンによって始められた(のちに「Tcl戦争」と呼ばれることになる)白熱した議論にその起源を発する。ストールマンは、Tclはアプリケーションを記述するには力不足だとし、GNUのアプリケーションを拡張するためにふさわしい言語としてSchemeを提唱して、その結果、Guileプロジェクトが始められた 。 当時、適当なSchemeインタプリタがなかったため、Guileは「隙間」を埋めるために開発された。(のちにarchの開発者となる)トム・ロードはシグナスソリューションズで働いている間にGuileの開発に深くのめりこんだ。初期のバージョンは、1995年よりも以前にSIOD(英: Scheme In One Day)やSCMインタープリタから派生した。
Guileの目標のひとつは、他の言語からSchemeさらにはポータブルな バイトコードへの翻訳を可能にすることである。そうすることで、Guileは効果的な言語中立のランタイム環境となることができる。この目標はいまだ達成されていないが、多くの努力がなされてきた(C言語と類似する構文を持たない他のScheme方言からの、Emacs Lispからの、TkWWWの関係で実装されたTclからの、そしてLOGOの類似言語からの変換が報告されている)。
Guile Scheme はXML、XPath、XSLT を(SXML、SXPath、SXSLT それぞれにおいて)サポートしている。 S式に基づいたXML処理が guile-lib によって提供されている。
GuileはポータブルなSchemeライブラリSLIBをサポートする。
GNU Guile は、プログラミング言語 Scheme のインタープリタ/バーチャルマシン。1993年に初めてリリースされた。 GuileはPOSIXシステムコールのモジュール化された拡張やAPL アレイの機能などを含み、オブジェクト ライブラリとしてパッケージングされている。「Libguile」を使うことで、Guileを他のプログラムの中に組み込んで、 他言語との密接な統合が可能なインターフェースとして使用することができる。
名前「Guile」は「GNU's ubiquitous interactive language for extension」から来ている。後付けのものではないが(注を参照)公式ウェブページの冒頭にあらわれたのは2011年の春頃である。
GuileはGNUプロジェクトの「公式の」 拡張言語であるが、 2006年の時点で、人気のあるプロジェクトの中でこの言語を使っているものは十指に満たない。その名称については、Usenetでの議論の中で、リー・トーマスによって提唱された。 基本的なアイデアは、「開発者は基本的なアルゴリズムやデータ構造はCやC++に実装し、機能や型をインタープリタ用のコードにエクスポートする。アプリケーションはインタープリタが統括するプリミティブのライブラリとなることで、コンパイルされたコードの効率とインタープリタの柔軟性の双方を備えることができる。」というものである。