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 comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

