Official chibi-scheme repository
Find a file
Alex Shinn 624b54c05c
Merge pull request #537 from lassik/fix-printf-warning
Avoid compiler warning about mismatched printf types
2019-04-26 22:33:14 +08: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 cmake: Add CMakeLists.txt 2017-11-18 16:28:31 +09:00
data Adding a gitignore for the temp data dir. 2015-04-09 01:30:06 +09:00
doc Fix typo in sexp_get_output_string documentation 2019-03-09 02:01:39 +01:00
examples Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
include/chibi Avoid compiler warning about mismatched printf types 2019-04-24 12:26:01 +03:00
js js/exported_functions.json: make it proper json 2018-11-25 19:10:35 +01:00
lib more helpful error messages on missing libraries 2019-04-21 22:11:11 +08:00
opt making string-cursors a disjoint type 2016-03-29 22:25:09 +09:00
tests fleshing out srfi 160 api 2019-02-26 23:08:52 +08:00
tools add 0085 (NEXT LINE) to char-set:whitespace (fixes #515 2019-02-10 22:36:23 +08:00
.gitignore Add lib/srfi/160/uvprims.c to .gitignore 2019-01-20 20:36:52 +01:00
.hgignore Emscripten support by default. Patch from Marc Nieper-Wi?kirchen. 2015-02-22 16:10:30 +09:00
.travis.yml wrong filename 2016-06-24 22:51:36 +09:00
appveyor.yml AppVeyor: Add MSVC x64 configuration to CI 2018-06-20 21:22:36 +09:00
AUTHORS adding note that marc wrote syntax-case in AUTHORS 2019-01-26 17:52:37 +08:00
bignum.c exact zero minus a number is negation (fixes issue #523) 2019-03-05 23:35:15 +08:00
chibi-scheme.pc.in Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
CMakeLists.txt cmake: Use SEXP_64BIT on Win64 2018-06-20 21:16:40 +09:00
configure adding informational configure script 2016-06-24 22:55:08 +09:00
COPYING adding (srfi 101) 2018-01-15 23:51:16 +09:00
eval.c add compile-time option to store precomputed index->cursor tables for strings 2019-01-26 05:35:27 +08:00
fedora.spec Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
gc.c catch failure to grow heap 2019-03-03 23:30:00 +08:00
gc_heap.c use PRId64/32 where available for printing fixnums (issue #479) 2018-06-29 22:44:16 +08:00
main.c -R needs interpreter name, not SRFI 22 2019-01-01 23:18:49 +08:00
Makefile Create $prefix/lib/chibi/srfi/160 when installing 2019-01-20 20:32:25 +01:00
Makefile.detect adding initial support for SRFI 160 uniform vectors 2019-01-15 23:43:50 +08:00
Makefile.libs fixing nofeature build 2019-01-16 08:33:04 +08:00
mkfile Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
opcodes.c adding -Dsafe-string-cursors feature to perform extra checks on string cursors 2019-02-01 00:31:13 +08:00
plan9.c Updating copyright years. 2015-04-09 01:28:02 +09:00
README-win32.md doc: Update README-win32.md to reflect recent changes 2018-06-20 21:22:36 +09:00
README.libs Forgot to install regexp (patch from Lorenzo) 2015-01-26 08:06:59 +09:00
README.md Note that chibi works on OpenBSD in the README 2019-03-10 15:03:48 -05:00
RELEASE bumping version 2017-10-06 23:56:31 +09:00
sexp.c Merge branch 'master' of github.com:ashinn/chibi-scheme 2019-04-02 22:31:45 +08:00
simplify.c Updating copyright years. 2015-04-09 01:28:02 +09:00
TODO updating note about thread status in TODO 2018-04-03 07:53:36 +09:00
VERSION bumping version 2017-10-06 23:56:31 +09:00
vm.c exact zero minus a number is negation (fixes issue #523) 2019-03-05 23:35:15 +08: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.

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 README-win32.md 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.