2.6 KiB
Cyclone is an experimental Scheme-to-C compiler that uses the Cheney on the MTA technique to implement full tail recursion, continuations, and generational garbage collection.
Getting Started
If you are installing Cyclone for the first time, you will need to use cyclone-bootstrap to build a set of binaries.
After installing you can read the Documentation section below for more.
Building
If you already have a copy of Cyclone installed you can build from Scheme source. The following prerequisites are required:
- make
- gcc
- Existing installation of Cyclone
From the source directory, use the following commands to build and install:
$ make
$ make test
$ sudo make install
$ ./cyclone
By default everything is installed under /usr/local
. This may be changed by passing a different PREFIX
. For example:
make PREFIX=/home/me install
You may then run the compiler using the cyclone
command, and run the interpreter using icyc
.
Documentation
Run the cyclone
command to compile a single Scheme file, and the icyc
command to start the interactive interpreter.
For more information about the Scheme language implemented by Cyclone, see the R7RS Scheme Specification. Here is a list of included features.
References
- CONS Should Not CONS Its Arguments, Part II: Cheney on the M.T.A., by Henry Baker
- CHICKEN Scheme
- Chibi Scheme
- Compiling Scheme to C with closure conversion, by Matt Might
- Lisp in Small Pieces, by Christian Queinnec
- R5RS Scheme Specification
- R7RS Scheme Specification
- Structure and Interpretation of Computer Programs, by Harold Abelson and Gerald Jay Sussman
- The 90 minute Scheme to C compiler, by Marc Feeley
License
Copyright (C) 2014 Justin Ethier
Cyclone is available under the MIT license.