🌀 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.
Find a file
Justin Ethier b51cd6e0f0 WIP
2015-05-13 11:17:09 -04:00
debug Initial file 2015-02-21 22:15:18 -05:00
docs Initial file 2015-02-21 22:15:18 -05:00
examples WIP 2015-05-13 11:17:09 -04:00
tests Added real? and integer? 2015-04-09 17:54:35 -04:00
.gitignore Initial file 2015-02-21 22:25:06 -05:00
cgen.scm More library integration 2015-05-12 18:20:48 -04:00
cyclone.h WIP 2015-05-06 17:55:11 -04:00
cyclone.scm WIP 2015-05-13 11:17:09 -04:00
eval.scm WIP - move Cyc-current-exception-handler to runtime 2015-04-15 22:58:39 -04:00
FEATURES.md Filling out compatibility table 2015-03-26 13:32:45 -04:00
icyc.scm Cleanup, display newline before exiting 2015-04-23 15:16:53 -04:00
Makefile Experimenting with resolving imports on front-end 2015-05-12 14:14:35 -04:00
parser.scm Allow escaped newline in a string 2015-03-19 13:20:18 -04:00
README.md Rename interpreter executable 2015-02-21 22:32:38 -05:00
runtime-main.h Edited header comment block 2015-05-07 21:32:59 -04:00
runtime.c Edited header comment block 2015-05-07 21:32:59 -04:00
runtime.h Fix compile warning 2015-05-07 21:26:59 -04:00
test.scm Self-contained example 2015-04-22 18:03:32 -04:00
TODO Cleanup fixed items 2015-04-24 11:32:58 -04:00
trans.scm WIP 2015-05-12 23:00:59 -04:00

cyclone-scheme

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

Prerequisites:

  • make
  • gcc
  • CHICKEN Scheme

CHICKEN is required to bootstrap the Scheme parts of Cyclone. A long-term goal is for the compiler to be self-hosting.

From the source directory, to build and run the compiler:

$ make
...
$ ./cyclone

To run the interpreter:

$ ./icyc

Installation

At the moment there is no support for a separate installation. Just run cyclone from the build directory.

Documentation

Run the cyclone command to compile a single Scheme file, and the repl 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

License

Copyright (C) 2014 Justin Ethier

License terms TBD