Official chibi-scheme repository
Find a file
2015-10-21 18:04:32 +02:00
benchmarks adding count to gc timer 2015-06-27 20:43:43 +09:00
build-lib/chibi/char-set Noting some simple char-set utilities are public domain. 2015-04-09 01:43:17 +09:00
contrib Update scheme-keywords.el 2015-10-21 18:04:32 +02:00
data Adding a gitignore for the temp data dir. 2015-04-09 01:30:06 +09:00
doc Removing sexp_display from docs. 2015-08-10 22:23:14 +09:00
examples Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
include/chibi removing declarations for sexp_display, now implemented in scheme 2015-08-10 22:22:07 +09:00
js Integrate emscripten build process in Makefile 2015-06-23 19:57:07 +02:00
lib fix boundary case in arithmetic-shift for negative word sized shifts 2015-09-30 22:21:22 +09:00
opt Committing removed files. 2015-02-08 16:02:50 +09:00
tests removing support for SEXP_USE_STRING_STREAMS 2015-07-04 23:25:40 +09:00
tools Handling non-pointer struct return types in the ffi. We do a flat memcopy 2015-06-22 23:01:44 +09:00
.gitignore Integrate emscripten build process in Makefile 2015-06-23 19:57:07 +02:00
.hgignore Emscripten support by default. Patch from Marc Nieper-Wi?kirchen. 2015-02-22 16:10:30 +09:00
AUTHORS Update AUTHORS 2015-07-23 14:35:28 -07:00
bignum.c Fix in sexp_bignum_quot_rem when the numerator and divisor are equal. 2015-06-15 23:31:46 +09:00
chibi-scheme.pc.in Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
chibi-scheme.vcproj Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
COPYING Updating copyright years. 2015-04-09 01:28:02 +09:00
eval.c Propagate error message from unfound dynamic lib when not found as builtin either. 2015-10-11 23:24:00 +09:00
fedora.spec Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
gc.c fixing debug_gc build 2015-06-28 16:37:30 +09:00
main.c Don't load all of (scheme small) for scripts. 2015-06-21 23:39:18 +09:00
Makefile Integrate emscripten build process in Makefile 2015-06-23 19:57:07 +02:00
Makefile.detect chibi.crypto: move sexp_uintN_t typedefs to <sexp.h> 2015-04-19 16:01:11 +03:00
Makefile.libs Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
mkfile Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
opcodes.c identifier->symbol should handle nested syntactic closures 2015-06-18 23:32:21 +09:00
plan9.c Updating copyright years. 2015-04-09 01:28:02 +09:00
README.libs Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
README.md Shortened logo URI & added Emscripten link 2015-06-07 12:06:33 +02:00
RELEASE Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
sexp.c fix typo not handling uppercase I in some complex numbers 2015-09-21 15:23:51 +09:00
simplify.c Updating copyright years. 2015-04-09 01:28:02 +09:00
TODO Updating some completed items. 2015-04-09 01:22:52 +09:00
VERSION changes go to the 0.7.3 release 2015-03-22 17:02:41 +09:00
vm.c When aligning bytecode, pad the skipped bytes with the previous opcode. 2015-06-03 22:29:38 +09:00

Chibi-Scheme

Minimal Scheme Implementation for use as an Extension Language

http://synthcode.com/wiki/chibi-scheme

Chibi-Scheme is a very small library intended for use as an extension and scripting language in C programs. In addition to support for lightweight VM-based threads, each VM itself runs in an isolated heap allowing multiple VMs to run simultaneously in different OS threads.

The default repl language contains all bindings from R7RS small, available explicitly as the (scheme small) library.

Support for additional languages such as JavaScript, Go, Lua and Bash are planned for future releases. Scheme is chosen as a substrate because its first class continuations and guaranteed tail-call optimization makes implementing other languages easy.

Chibi-Scheme is known to work on 32 and 64-bit Linux, FreeBSD and OS X, Plan9, Windows (using Cygwin), iOS, and Emscripten.

To build on most platforms just run make && make test. This will provide a shared library libchibi-scheme, as well as a sample chibi-scheme command-line repl. You can then run

sudo make install

to install the binaries and libraries. You can optionally specify a PREFIX for the installation directory:

make PREFIX=/path/to/install/
sudo make PREFIX=/path/to/install/ install

By default files are installed in /usr/local.

If you want to try out chibi-scheme without installing, be sure to set LD_LIBRARY_PATH so it can find the shared libraries.

For more detailed documentation, run make doc and see the generated doc/chibi.html.