Alex Shinn
9a3c863630
updating some individual opcodes to new API
2010-03-24 20:42:49 +09:00
Alex Shinn
a89956fc16
new primitives API
...
Primitives now have a signature of prim(ctx, self, n, args ...)
instead of just prim(ctx, args ...). This allows for variadic
primitives, should help clean up exception handling, and will
allow primitives generated from Scheme->C or JIT compilation.
The primitives sometimes used as utility functions from C such as
sexp_memq have been renamed with a "_op" suffix (e.g. sexp_memq_op)
and a macro sexp_memq has been provided filling in the self and n
args automatically. The self is passed as NULL in these macros,
but will be probably replaced with a reference to the opcode later.
2010-03-24 19:58:50 +09:00
Alex Shinn
cc6f727add
sexp_intern, sexp_read_from_string and sexp_eval_string now all take length parameters.
...
this is more flexible and will help if strings are changed to be non-null-terminated.
2010-03-23 20:52:47 +09:00
Alex Shinn
0a9085fbbd
const qualifying char* inputs to various API functions
2010-03-22 15:14:30 +09:00
Alex Shinn
bb3d44054e
fixing syntax error with " .)" in source (issue #45 )
2010-03-16 21:41:32 +09:00
Alex Shinn
e15c49389c
auto-closing gc'ed string ports to prevent memory leaks (issue #41 ).
...
also using a separate port field no_closep to indicate ports whose
underlying streams shouldn't be closed (stdin/stdout/stderr).
2010-03-10 21:39:20 +09:00
Alex Shinn
171966956f
fixing bug in sexp_destroy_context
...
We need to grab a reference to the context heap before sweeping, in
case sweeping overwrites the heap reference.
2010-03-09 20:23:29 +09:00
Alex Shinn
fea1b696a4
adding patches for C++
2010-02-27 23:57:54 +09:00
Alex Shinn
670a4ae67b
adding option to mmap heaps instead of mallocing them
2010-02-25 23:58:57 +09:00
Alex Shinn
4dcfb8aa6b
exponents in numbers always indicate inexactness per R5RS (indirectly fixes issue 34)
2010-02-05 13:42:30 +09:00
Alex Shinn
4020a1c1f6
widening whole # input to a double on read_float_tail (issue 33)
2010-02-05 13:30:00 +09:00
Alex Shinn
8046a3c139
workaround for bug in fmemopen - open /dev/null instead of empty strings
2010-01-24 21:52:46 +09:00
Alex Shinn
add39db40b
fixing error checks on first digit for numbers with #r prefix (issue #27 )
2010-01-20 21:00:37 +09:00
Alex Shinn
562ec60926
adding extended io utils, including custom ports, with high-level
...
custom port constructors such as concatenated and filtered ports.
2010-01-02 20:14:32 +09:00
Alex Shinn
4a5cae51ae
forgot to preserve a var on remainder
2010-01-01 16:16:40 +09:00
Alex Shinn
d954819775
adding (chibi io) w/ interface to fgets, fread, fwrite, etc.
2009-12-31 00:24:19 +09:00