Skip to content
Official chibi-scheme repository
Branch: master
Clone or download
Latest commit 8b4acbc Mar 14, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
benchmarks adding count to gc timer Jun 27, 2015
contrib cmake: Add CMakeLists.txt Nov 18, 2017
data Adding a gitignore for the temp data dir. Apr 8, 2015
examples Forgot to install regexp (patch from Lorenzo) Jan 25, 2015
include/chibi uvector fixes Feb 25, 2019
lib adding true color ansi support Mar 13, 2019
opt making string-cursors a disjoint type Mar 29, 2016
tests fleshing out srfi 160 api Feb 26, 2019
.gitignore Add lib/srfi/160/uvprims.c to .gitignore Jan 20, 2019
.hgignore Emscripten support by default. Patch from Marc Nieper-Wi?kirchen. Feb 22, 2015
Makefile Create $prefix/lib/chibi/srfi/160 when installing Jan 20, 2019
Makefile.detect adding initial support for SRFI 160 uniform vectors Jan 15, 2019
Makefile.libs doc: Update to reflect recent changes Jun 20, 2018
appveyor.yml AppVeyor: Add MSVC x64 configuration to CI Jun 20, 2018
bignum.c exact zero minus a number is negation (fixes issue #523) Mar 5, 2019 Forgot to install regexp (patch from Lorenzo) Jan 25, 2015
configure adding informational configure script Jun 24, 2016
eval.c add compile-time option to store precomputed index->cursor tables for… Jan 25, 2019
gc_heap.c use PRId64/32 where available for printing fixnums (issue #479) Jun 29, 2018
mkfile Forgot to install regexp (patch from Lorenzo) Jan 25, 2015
opcodes.c adding -Dsafe-string-cursors feature to perform extra checks on strin… Jan 31, 2019
plan9.c Updating copyright years. Apr 8, 2015
vm.c exact zero minus a number is negation (fixes issue #523) Mar 5, 2019


Minimal Scheme Implementation for use as an Extension Language

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.

There are no external dependencies so is relatively easy to drop into any project.

The default repl language contains all bindings from R7RS small, available explicitly as the (scheme small) library. The language is built in layers, however - see the manual for instructions on compiling with fewer features or requesting a smaller language on startup.

Chibi-Scheme is known to work on 32 and 64-bit Linux, FreeBSD, NetBSD, OpenBSD and OS X, Plan 9, Windows (using Cygwin), iOS, Android, ARM and Emscripten. Basic support for native Windows desktop also exists. See for details and build instructions.

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.

You can’t perform that action at this time.