mirror of
https://github.com/justinethier/cyclone.git
synced 2025-05-23 20:15:05 +02:00
🌀 A brand-new compiler that allows practical application development using R7RS Scheme. We provide modern features and a stable system capable of generating fast native binaries.
debug | ||
docs | ||
examples | ||
include/cyclone | ||
scheme | ||
tests | ||
.gitignore | ||
cyclone.scm | ||
FEATURES.md | ||
generate-c.scm | ||
icyc.scm | ||
Makefile | ||
Makefile.bootstrap | ||
Makefile.config | ||
README.md | ||
runtime.c | ||
test.scm | ||
test2.scm | ||
TODO |
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.
Building
TODO: new instructions, link/instructions for bootstrapping, etc
Prerequisites:
- make
- gcc
From the source directory, to build and run the compiler:
$ make
...
$ ./cyclone
To run the interpreter:
$ ./icyc
Installation
TODO: integrate with previous section???
Documentation
Run the cyclone
command to compile a single Scheme file, and the icyc
command to start the interactive interpreter.
List of features.
TODO: "how it works section", or a link to a document that provides a brief overview. Much of this would also involve tying together references
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
- 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 with Julie Sussman
- The 90 minute Scheme to C compiler, by Marc Feeley
License
Copyright (C) 2014 Justin Ethier
License terms TBD