]> git.donarmstrong.com Git - lilypond.git/blob - guile18/doc/sources/libguile-overview.texi
Import guile-1.8 as multiple upstream tarball component
[lilypond.git] / guile18 / doc / sources / libguile-overview.texi
1 @node Libguile overview
2 @chapter Libguile overview
3 @cindex libguile - overview
4
5 Extension languages, like Guile, Python and Tcl, can be embedded into a
6 C program, @footnote{Or a C++ or Fortran or Pascal program if you want.}
7 and thus allow the user to @emph{extend} the C program.
8
9 The way this is done is by providing a C language library with a well
10 defined interface.  The interface consists of a set of public and
11 documented C-callable routines that offer the full interpreter
12 functionality, and allow the conversion of data between C and the
13 extension language.
14
15 @menu
16 * An example of libguile functionality::  
17 * What can be done with libguile::  
18 * Schizofrenia -- two APIs::    
19 @end menu
20
21 @node An example of libguile functionality
22 @section An example of libguile functionality
23
24 [Two examples: using strings and using data conversion.]
25
26 @node What can be done with libguile
27 @section What can be done with libguile
28
29 @node Schizofrenia -- two APIs
30 @section Schizofrenia -- two APIs