[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
5 Programming in C
This part of the manual explains the general concepts that you need to understand when interfacing to Guile from C. You will learn about how the latent typing of Scheme is embedded into the static typing of C, how the garbage collection of Guile is made available to C code, and how continuations influence the control flow in a C program.
This knowledge should make it straightforward to add new functions to Guile that can be called from Scheme. Adding new data types is also possible and is done by defining smobs.
The An Overview of Guile Programming section of this part contains general musings and guidelines about programming with Guile. It explores different ways to design a program around Guile, or how to embed Guile into existing programs.
For a pedagogical yet detailed explanation of how the data representation of Guile is implemented, See section Data Representation. You don’t need to know the details given there to use Guile from C, but they are useful when you want to modify Guile itself or when you are just curious about how it is all done.
For detailed reference information on the variables, functions etc. that make up Guile’s application programming interface (API), See section API Reference.
5.1 Parallel Installations | Finding the right Guile. | |
5.2 Linking Programs With Guile | More precisely, with the libguile library. | |
5.3 Linking Guile with Libraries | To extend Guile itself. | |
5.4 General concepts for using libguile | ||
5.5 Defining New Types (Smobs) | Adding new types to Guile. | |
5.6 Function Snarfing | A way to define new functions. | |
5.7 An Overview of Guile Programming | An overview of Guile programming. | |
5.8 Autoconf Support | Putting m4 to good use. |
[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on April 20, 2013 using texi2html 5.0.