@node Libguile overview @chapter Libguile overview @cindex libguile - overview Extension languages, like Guile, Python and Tcl, can be embedded into a C program, @footnote{Or a C++ or Fortran or Pascal program if you want.} and thus allow the user to @emph{extend} the C program. The way this is done is by providing a C language library with a well defined interface. The interface consists of a set of public and documented C-callable routines that offer the full interpreter functionality, and allow the conversion of data between C and the extension language. @menu * An example of libguile functionality:: * What can be done with libguile:: * Schizofrenia -- two APIs:: @end menu @node An example of libguile functionality @section An example of libguile functionality [Two examples: using strings and using data conversion.] @node What can be done with libguile @section What can be done with libguile @node Schizofrenia -- two APIs @section Schizofrenia -- two APIs