CHICKEN is a compiler for the Scheme programming language. It translates Scheme source files into C, which in turn can be fed to a C compiler to generate a standalone executable. An interpreter is also available and can be used as a scripting environment or for testing programs before compilation.
CHICKEN Scheme combines an optimizing compiler with a reasonably fast interpreter. It supports almost all of R7RS and the important SRFIs. The compiler generates portable C code that supports tail recursion, first-class continuations and lightweight threads, and the interface to and from C libraries is flexible, efficient, and easy to use. There are hundreds of contributed CHICKEN libraries that make the programmer’s task easier.
The interpreter allows interactive use, fast prototyping, debugging, and scripting.
Scheme is a member of the Lisp family of languages, of which Common Lisp, Emacs Lisp and Clojure are other widely-known members.
Key Features
- Lightweight on dependencies.
- Lightweight threads based on first-class continuations.
- Record structures.
- Extended comment- and string-literal syntaxes.
- Libraries for regular expressions, string handling.
- UNIX system calls and extended data structures.
- Compiled C files can be easily distributed.
- Allows the creation of fully self-contained statically linked executables.
- On systems that support it, compiled code can be loaded dynamically.
- Built-in support for cross-compilation.
- Scheme interpreter that supports all of R5(7)RS Scheme, with only a few relatively minor omissions, and with many extensions.
- Compatible compiler whose target is C, thus making porting to new machines and architectures relatively straightforward.
- C support allows Scheme code to include ’embedded’ C code, thus making it easy to invoke host OS or library functions.
- Framework for language extensions, library modules that broaden the functionality of the system.
- Runs on many platforms, including x86, x86-64, ARM, MIPS, SPARC64 and PowerPC.
Website: www.call-cc.org
Support: User’s Manual, Mailing Lists
Developer: The Chicken Team
License: BSD License
Related Software
| Compilers | |
|---|---|
| GNU Compiler Collection | The standard compiler for most Unix-like operating systems |
| rustc | Compiler for the Rust programming language |
| AOCC | AMD Optimizing C/C++ Compiler |
| LLVM | Low-Level Virtual Machine (LLVM) compiler for C/C++ |
| ispc | Intel SPMD Program Compiler |
| Babel | JavaScript compiler - use next generation JavaScript |
| Glasgow Haskell Compiler | An optimizing compiler for Haskell, written in Haskell |
| Clang | C Language Family Frontend for LLVM |
| Nuitka | Optimizing Python compiler |
| CHICKEN | Compiler for the Scheme programming language |
| FreeBASIC | 32-bit BASIC compiler |
| Numba | Compiler for Python array and numerical functions |
| Free Pascal | Advanced Pascal compiler for Pascal and Object Pascal |
| NASM | Assembler for the x86 CPU architecture |
| Bigloo | Practical Scheme compiler |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.