CHICKEN is a compiler for the Scheme programming language. CHICKEN produces portable and efficient C, supports almost all of the R5RS Scheme language standard, and includes many enhancements and extensions. CHICKEN runs on Linux, MacOS X, Windows, and many Unix flavours.

FEATURES

  • Includes a full-featured interactive interpreter as well as an optimizing batch compiler
  • Usable for interpreted scripts or compiled standalone executables with either dynamic or static linkage
  • Full support for tail recursion, first-class continuations and hygienic macros
  • Highly portable and known to run on many platforms, including x86, x86-64, IA-64, PowerPC, SPARC and UltraSPARC, Alpha, MIPS, ARM and S/390
  • Distributed free for use and modification under the terms of the BSD License
  • Transparent support for dynamically loadable compiled code and linkage to C
  • An easy to use foreign function interface for accessing C and C++ libraries from Scheme code
  • Lightweight user-level threads based on first-class continuations
  • Provides high- and low-level hygienic macros, including syntax-rules
  • Includes a powerful module system that integrates hygienic macros and separate compilation
  • A POSIX interface that covers environment and filesystem access, pipes, processes, signals, locks, sockets, and low-level and memory-mapped I/O
  • Perl-compatible regular expressions, including support for SRE syntax (Structured Regular Expressions)
  • Straightforward creation of standalone applications and self-contained application bundles
  • Builtin support for cross-compiling applications for embedded targets
  • Support for a large number of Scheme Requests For Implementation (SRFIs)
  • Many libraries and extensions are available at Eggs Unlimited

DOWNLOAD

Stable and development releases can be downloaded from http://code.call-cc.org/.

DOCUMENTATION

CHICKEN's documentation is kept in the CHICKEN wiki; you can view the user's manual or the egg documentation there.

chickadee is an API browser for the entire CHICKEN ecosystem (core and eggs). To access documentation from the command-line or inside your editor, try chicken-doc.

MAILING LISTS

The chicken-users mailing list is a medium-volume but fast-response list for discussing all things related to CHICKEN.

If you are interested in the development of CHICKEN, check out chicken-hackers.

chicken-announce receives announcements of new releases and noteworthy events in the CHICKEN community

chicken-vulnerabilities receives vulnerability reports (see CHICKEN's Security Policy).

To receive notifications from the bug tracking system, subscribe to chicken-janitors.

DEVELOPMENT

To obtain development snapshots of the core system, or get access to the core git repository or the Subversion eggs repository, see Development.

CONTACT

If you have any questions, suggestions or insults regarding CHICKEN, don't hesitate to join the CHICKEN Users mailing list. Bug reports should be directed to the CHICKEN bug tracking system.