You are looking at historical revision 1082 of this page. It may differ significantly from its current revision.


CHICKEN is a compiler that translates Scheme source files into C, which in turn can be fed to a C-compiler to generate a standalone executable. This principle, which is used by several existing compilers, achieves high portability because C is implemented on nearly all available platforms. An interpreter is also available and can be used as a scripting environment or for testing programs before compilation.

This package is distributed under the BSD license and as such is free to use and modify.

The method of compilation and the design of the runtime-system follow closely Henry Baker's CONS Should Not CONS Its Arguments, Part II: Cheney on the M.T.A. paper and expose a number of interesting properties:

The generated C code is fully tail-recursive.

Some of the features supported by CHICKEN:

This manual is merely a reference for the CHICKEN system and assumes a working knowledge of Scheme.

Basic mode of operation

Using the compiler

Using the interpreter

Supported language

Interface to external functions and variables


Additional files

Data representation

Bugs and limitations