Chicken is a Scheme compiler that translates most of R5RS Scheme into relatively portable C. It supports fully general tail-call recursion, first-class continuations, and has a very flexible and efficient interface to C and C++. Chicken implements several extensions to the Scheme language: lightweight threads, pattern matching macros, dynamic loading of compiled code, and various object-oriented paradigms, such as TinyCLOS, Meroon, Prometheus, and others. The library system includes hundreds of convenient modules for practical use.
| Tags | Software Development Compilers Interpreters |
|---|---|
| Licenses | BSD Revised |
| Operating Systems | Mac OS X Windows Windows POSIX BSD HP-UX Linux Solaris Unix |
| Implementation | C Scheme |
Recent releases


Changes: The macro system was completely overhauled and converted to hygienic macros. A macro-aware module system was added. PCRE was replaced with the irregex regular expression library. The library installation system was replaced with a much more flexible one. Many deprecated functions were removed.


Changes: The compiler now supports selective procedure profiling. All file-related procedures have been moved to new unit files. There have been numerous fixes to the Cygwin and MinGW builds. PCRE bundled with Chicken has been updated.


Changes: A number of small bugfixes in the library procedures and the build system have been made. All port-related procedures have been moved to a new unit ports.


Changes: Two new units, srfi-69 and data-structures, have been factored out from unit extras. Lexicographic version comparison in chicken-setup has been eliminated, so egg version dependencies are handled properly. file-copy and file-remove have been added to unit utils.


Changes: The semantics of chicken-setup have been changed to allow sandbox-type installation of libraries. MinGW support has been improved. Unit regex has been updated to use PCRE 7.6. There have been many additions and fixes to the posix unit and to the hashtable functions in the extras unit.