Official chibi-scheme repository
Find a file
Alex Shinn 83f8cfd69b Adding note about the derived syntax definition of quote. It makes
compilation slightly but noticeably slower and is inconvenient, so
leaving as a core form for now.
2013-04-09 21:46:29 +09:00
benchmarks SRFI-22 now requires the -r (run) option. 2012-11-11 16:17:26 +09:00
build-lib/chibi/char-set Renaming the (scheme) library to (chibi). Leaving (scheme) as an alias for backwards compatibility. 2012-10-14 22:11:47 +09:00
contrib automatically making sockets non-blocking on accept 2012-05-14 08:37:45 -04:00
data adding ascii and full unicode char-set libraries based on isets 2012-06-17 19:36:17 +09:00
doc Adding initial config library. 2012-12-13 10:35:55 +09:00
examples Cleanup up echo server example. 2012-09-16 15:20:09 +09:00
include/chibi Factoring out generate opcode and exporting it. 2013-04-07 20:09:39 +09:00
lib Using non-mutating tree of dynamic-wind state for thread safety. 2013-04-07 23:59:41 +09:00
opt Build fixes for plan9. Moving individual object files out of opt/ since plan9 mkfiles have issues with these. 2012-08-16 16:04:02 +09:00
tests temporarily disabling scheme-report-environment test 2013-04-07 23:40:14 +09:00
tools The global ABI error object needs to be an immediate, since if 2013-02-10 16:38:18 +09:00
.hgignore ignoring generated file 2012-08-26 13:54:16 +09:00
AUTHORS updating authors 2012-08-26 14:30:46 +09:00
bignum.c sexp_bignum_sqrt is only needed if SEXP_USE_MATH is enabled. 2013-03-23 21:16:21 +01:00
chibi-scheme.vcproj automatically making sockets non-blocking on accept 2012-05-14 08:37:45 -04:00
COPYING Updating version for release. 2012-11-11 17:39:09 +09:00
eval.c Adding note about the derived syntax definition of quote. It makes 2013-04-09 21:46:29 +09:00
fedora.spec automatically making sockets non-blocking on accept 2012-05-14 08:37:45 -04:00
gc.c printing debug output on OOM 2012-06-24 14:07:59 -07:00
main.c Using scheme load when available for scripts to preserve stack traces. 2013-04-07 23:46:30 +09:00
Makefile ast.so only needs GCLDFLAGS, not full LDFLAGS which breaks for cygwin 2013-03-10 23:59:07 +09:00
Makefile.detect Incorporating Alan Watson's TAI time library. 2012-08-17 10:04:37 +09:00
Makefile.libs makefile changes to allow linking external libs for 3rd party code 2012-07-09 20:28:18 +09:00
mkfile Build fixes for plan9. Moving individual object files out of opt/ since plan9 mkfiles have issues with these. 2012-08-16 16:04:02 +09:00
opcodes.c Factoring out generate opcode and exporting it. 2013-04-07 20:09:39 +09:00
plan9.c Updating calls to sexp_gc_var to omit ctx. 2013-02-09 09:41:42 +09:00
README 0.6.1 release with several fixes 2012-12-04 20:12:28 +09:00
README.libs makefile changes to allow linking external libs for 3rd party code 2012-07-09 20:28:18 +09:00
RELEASE Updating version for release. 2012-11-11 17:39:09 +09:00
sexp.c Better initial defaults for equality bounds checking. 2013-01-26 23:42:22 +09:00
simplify.c Build fixes for plan9. Moving individual object files out of opt/ since plan9 mkfiles have issues with these. 2012-08-16 16:04:02 +09:00
TODO automatically making sockets non-blocking on accept 2012-05-14 08:37:45 -04:00
VERSION 0.6.1 release with several fixes 2012-12-04 20:12:28 +09:00
vm.c Initialize record fields to void. 2013-04-05 20:20:03 +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 language is based on an extended subset of the current
draft R7RS Scheme, with support for all libraries.  To get a pure R7RS
repl you can run

  chibi-scheme -xscheme.base

or see the (chibi repl) library for more options.

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.

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 PREFIX=/usr/local install

to install the binaries, leaving out the PREFIX for the default
/usr/local or specifying an alternate install location.  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".