Commit graph

473 commits

Author SHA1 Message Date
Alex Shinn
f785134851 updating plan9 mkfile to use features.h 2009-12-29 19:03:50 +09:00
Alex Shinn
7e0464154a number? includes a check for bignums (issue #19) 2009-12-29 18:45:22 +09:00
Alex Shinn
5227209ff8 Added tag 0.3 for changeset 65545bf53d96 2009-12-29 15:35:44 +09:00
Alex Shinn
9bbe80f4bf adding descriptive sexp_release_name for more detailed information
in "about this software" dialogs and such.

0.3 is lithium.  0.1 and 0.2 are retroacively hydrogen and helium,
respectively.
2009-12-29 15:33:06 +09:00
Alex Shinn
98d03e884e adding sexp_version constant which is just a string holding the
version information (currently "0.3").  also adding some features
that may be important to test for: dynamic-loading, modules, and
boehm-gc.
2009-12-29 14:51:13 +09:00
Alex Shinn
dd16dcef2d renaming config.h to features.h 2009-12-29 14:39:13 +09:00
Alex Shinn
e5bcac2142 adding sexp_make_unsigned_integer, using that in the stubber for unsigned types 2009-12-29 14:27:53 +09:00
Alex Shinn
f897ecc9c1 adding chroot-based install test 2009-12-29 03:17:03 +09:00
Alex Shinn
abf0db97d2 merging 2009-12-28 23:42:17 +09:00
Alex Shinn
3a708218c4 removing reference to exit(0) for plan9 2009-12-28 23:41:38 +09:00
Alex Shinn
44a6c530d9 EVAL save/restores the current exception handler.
It doesn't really make sense for an exception to pass
outside of EVAL.  Fixes issue #17.
2009-12-28 23:18:04 +09:00
Alex Shinn
964011c39b fixing build for immediate flonums on 32-bit machines 2009-12-28 22:59:57 +09:00
Alex Shinn
f141b22cb3 adding extended documentation to README, updating version and
copyright information.
2009-12-28 22:53:20 +09:00
Alex Shinn
ad068bc1f8 adding srfi-39 2009-12-28 21:05:25 +09:00
Alex Shinn
02e1bb820d adding a manpage 2009-12-28 19:29:43 +09:00
Alex Shinn
b66c116183 adding srfi-95 2009-12-28 19:13:09 +09:00
Alex Shinn
007c3f07fe switching to SRFI-22 semantics.
-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.
2009-12-28 16:30:51 +09:00
Alex Shinn
2810fb8b1b sexp_make(_eval)_context now takes an extra parameter to specify the
initial heap size (available as the -h option on the command line).
2009-12-28 13:09:43 +09:00
Alex Shinn
9350920623 adding the SEXP_USE_NO_FEATURES build option 2009-12-28 00:08:33 +09:00
Alex Shinn
793d3931e3 using faster symbolp test when immediate symbols are disabled 2009-12-28 00:07:44 +09:00
Alex Shinn
4f45da310a removing flonums from basic tests 2009-12-28 00:06:59 +09:00
Alex Shinn
1fda388db9 fixing vm <, >, = comparator cases when both flonums and bignums are disabled 2009-12-28 00:06:46 +09:00
Alex Shinn
17e4f63f94 fixing a simple offby1 error in intern previously hidden by the
prevalence of huffman-coded symbols.
2009-12-27 23:19:19 +09:00
Alex Shinn
667e8959e0 port size should be size_t 2009-12-27 22:37:55 +09:00
Alex Shinn
f2fb277eab forgot the return value 2009-12-27 16:39:32 +09:00
Alex Shinn
84404ac54a adding sexp_load_standard_parameters to fix -q option to main 2009-12-27 16:38:37 +09:00
Alex Shinn
6fa8474c42 don't check for bits over 32 on 32-bit machines in integer_log2
(removes shift width warning)
2009-12-27 16:15:28 +09:00
Alex Shinn
482e0d79a9 #t and #f are case-insensitive tokens 2009-12-27 16:08:27 +09:00
Alex Shinn
461fec8e6d adding build-tests script to verify different build options. 2009-12-27 15:44:28 +09:00
Alex Shinn
5f7201ab04 immediate flonums now work on 64-bit machines.
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.
2009-12-27 13:37:25 +09:00
Alex Shinn
f645ecbb54 updating the sexp_allocated_bytes signature to use the context for
context-local types
2009-12-27 13:34:53 +09:00
Alex Shinn
b1b14fb750 removing opt/debug.c from the eval.o dependencies 2009-12-27 07:29:44 +09:00
Alex Shinn
02a763007d moving disasm to (chibi disasm) module 2009-12-27 01:17:32 +09:00
Alex Shinn
3c2615e2a7 moving file-exists? to (chibi filesystem) 2009-12-27 00:45:28 +09:00
Alex Shinn
23411056c2 resetting current-exception-handler after handler is done 2009-12-27 00:28:20 +09:00
Alex Shinn
2534e81d5b adding initial host system module 2009-12-26 23:48:43 +09:00
Alex Shinn
e9d6f1857a types are now context-group local by default. 2009-12-26 23:46:54 +09:00
Alex Shinn
7eae77d0f9 converting make-exception to a primitive opcode instead of a foreign
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.
2009-12-26 16:21:37 +09:00
Alex Shinn
55710f48be DIR isn't a struct 2009-12-26 09:09:04 +09:00
Alex Shinn
e82b500b61 adding explicit type-casts when using sexp_cpointer_value,
not all compilers will allow implicit conversions from void*.
also removing Linux-specific stime and utime from siginfo_t.
2009-12-26 09:01:45 +09:00
Alex Shinn
8596e1812a recursive evals now share the same stack.
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.
2009-12-26 08:25:57 +09:00
Alex Shinn
7392e082cc adding srfi-46 support 2009-12-26 08:07:28 +09:00
Alex Shinn
05ee7c6725 adding (... ...) escapes and SRFI-46 ellipse specifiers to syntax-rules 2009-12-26 02:07:18 +09:00
Alex Shinn
fea2428eb6 auto-expanding hash-tables 2009-12-26 01:48:12 +09:00
Alex Shinn
09b7b7de69 can't have a null timeval in settimeofday 2009-12-26 01:10:27 +09:00
Alex Shinn
a1941ff08a somewhat reluctantly adding dynamic-wind 2009-12-26 00:50:45 +09:00
Alex Shinn
4e5889a6f4 forgot to add signal.c used by process.stub 2009-12-25 23:32:38 +09:00
Alex Shinn
77f2990f28 factoring (chibi posix) into filesystem, process and time modules.
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.
2009-12-25 21:11:56 +09:00
Alex Shinn
bfbc9313ed fixing import bug (was ignoring exports list except when using
only/except/rename/prefix modifiers)
2009-12-24 14:53:30 +09:00
Alex Shinn
cb1859c683 allowing link on input parameters for use with functions like readdir 2009-12-22 22:55:46 +09:00