What is Guile?

Guile is a library designed to help programmers create flexible applications. Using Guile in an application allows programmers to write plug-ins, or modules (there are many names, but the concept is essentially the same) and users to use them to have an application fit their needs.

There is a long list of proven applications that employ extension languages. Successful and long-lived examples in the free software world are Emacs, GNU/Denemo, GNU/Lilypond, GNU/make, GnuCash.

Very popular examples of extending server applications are the Apache projects Perl and PHP modules.

Extension languages allow users, programmers, and third-party developers to add features to a program without having to re-write the program as a whole, and it allows people extending a program to co-operate with each other, without having to expend any extra effort.

Guile also has an object system called GOOPS

The Guile homepage can be found here:

If you have old code that uses Guile, ttn maintains a backward-compatible Guile 2.0.x and related programs.

category-implementations category-guile