-s is no longer needed, only the first non-option argument is
loaded (though you can use -- if the script name begins with a -).
main is then called automatically if defined. -u was changed to -m.
we pack a 32-bit float so there's no funky rounding issues as
on 32-bit machines. this reduces heap usage, and avoids
allocations during flonum arithmetic.
function, since foreign functions will always raise any exception they
return (hence the double catch in issue #15).
also restoring the original exception handler when an exception is
raised in with-exception-handler, so that exceptions within the
handler itself don't cause an infinite loop. this may change, as
with-exception-handler is meant to be a low-level tool on which to
build either guard or condition-case, but until then the restoring
is necessary.
since in a minimal chibi heap the stack accounts for a large
amount of the space, this makes a big difference - you can
now load (chibi match) in a 2MB heap on a 64-bit system and
it won't grow the heap.
the time module is garbage, because libc time handling is garbage.
the signal handling is still experimental, use at your own risk.
still need a host module for user/group and other host information.
You want to use the CHIBI_MODULE_PATH environment variable now,
not CHIBI_MODULE_DIR, and can use : separators as expected.
The default main now also accepts -I<dir> and -A<dir> to prepend
or append module directories.
The default path is ".:./lib:$PREFIX/share/chibi". The first
two may be removed in a future version.
to have an SEXP_ prefix. Now all values from the headers
are prefixed with either sexp_ or SEXP_, important for ease
of embedding. "make USE_BOEHM=1" still works as an alias
for "make SEXP_USE_BOEHM=1".
Sorry if this patch breaks your code, it had to be done
sooner or later.
and non-mutated identifiers. helps a lot with the default
syntax-rules constructions - in particular reduces the number of
bytecode allocations for (chibi match) from 2397 to 1872.