Commit graph

1252 commits

Author SHA1 Message Date
Alex Shinn
87fc698e6e Catching case when bytecode source is NULL. 2012-07-08 12:27:07 +09:00
Alex Shinn
3e79138e21 Various fixes for better debug output.
* Associate file/line source info with corresponding bytecode offset.
  * Fixes for losing source info after macro expansion and simplification.
  * Fix for showing the source info of the calling procedure of an error.
2012-07-07 15:26:08 +09:00
Alex Shinn
4a8c8a3a75 Fix for string-concatenate on empty lists. 2012-07-07 14:17:02 +09:00
Alex Shinn
6bcfd141be -q implies modules are loaded 2012-06-28 00:42:44 -07:00
Alex Shinn
88b84d5232 fleshing out hash tests 2012-06-25 22:38:27 -07:00
Alex Shinn
a7e899ce8d (chibi test) now uses only R7RS plus srfi-1 2012-06-25 22:07:27 -07:00
Alex Shinn
881d976464 more accurate current-second 2012-06-25 22:03:54 -07:00
Alex Shinn
1809aad33b (exit #t) exits successfully 2012-06-25 21:46:07 -07:00
Alex Shinn
02d02f40be adding string-tests to lib-tests 2012-06-25 21:02:08 -07:00
Alex Shinn
ef4372a2cd fix for iset-prune! to return an empty iset instead of #f 2012-06-24 23:20:00 -07:00
Alex Shinn
100e5b7d1e using condensed test output by default unless TEST_VERBOSE=1 is set 2012-06-24 23:12:40 -07:00
Alex Shinn
9936ad2d58 adding more test suites to lib tests 2012-06-24 23:11:53 -07:00
Alex Shinn
38144adfc5 better source preservation from syntax-rules on restructured ellipsis patterns 2012-06-24 15:04:49 -07:00
Alex Shinn
5013c0fdcb moving pair-source and pair-source-set! into the core 2012-06-24 14:36:45 -07:00
Alex Shinn
bad54b143c printing debug output on OOM 2012-06-24 14:07:59 -07:00
Alex Shinn
d11ededc50 better initialization checks for out of memory 2012-06-24 10:44:34 -07:00
Alex Shinn
c9d24497d9 Adding todo for dynamic-wind. 2012-06-23 23:41:37 -07:00
Alex Shinn
3b10f4f748 Don't reset dynamic stack on eval. 2012-06-23 23:37:36 -07:00
Alex Shinn
fba762deea Updating R7RS tests with name changes. 2012-06-23 22:30:51 -07:00
Alex Shinn
fa7a567458 Making string-fold/for-each/map n-ary. 2012-06-23 22:30:35 -07:00
Alex Shinn
ed4907e19a Install fixes for char-sets/isets from Ben Weaver. 2012-06-22 06:06:17 -07:00
Alex Shinn
8fe6b8f7bd (chibi strings) functions taking predicates now accept char-sets as well. 2012-06-21 23:08:24 -07:00
Alex Shinn
a18deb68cc Optional code refactoring.
Chibi uses a lot of #if conditioned code so that configuration
management can be done entirely with the C preprocessor.

Originally this also involved conditional includes of .c files
from other source files.  The alterative, which this change
switches to, is to compile and link all files, and for uneeded
files conditionally eliminate their entire bodies so they compile
to empty object files.

Pros for conditionally including all code into one large file:

  * Don't need to declare most functions (keeps .h files small).
  * Can keep most functions static/inlined (keeps objects small).
  * Don't need to even distribute uneeded files with the default
    Makefile (e.g. can prune opt/* from dist for minimal builds).

Pros for linking multiple possibly empty files:

  * Extensions and third-party libs probably want the exported
    declarations anyway.
  * Static analysis tools work better (e.g. flymake on what previously
    was an included file).
  * Can build each file in parallel (i.e. make -j for faster builds).
  * Can build and link in just the changed files, instead of
    having to recompile the whole thing.

For Chibi these are all minor points - it will be small
regardless, and will build fast regardless - but the arguments
for splitting seem stronger.  Note the new shared lib is about
1k larger, but that can be trimmed down later.
2012-06-21 23:04:07 -07:00
Alex Shinn
08e4fead8b small fixes and warning removals for build tests 2012-06-20 21:39:52 -07:00
Alex Shinn
8518ebe641 image header magic field shouldn't be const (removes warning) 2012-06-20 21:07:18 -07:00
Alex Shinn
05d416e17f The argument to exit is optional, and is treated as 1 for any non-integer
("error" for any non-string on plan9).  The idiom (exit #f) can be used
to indicate an arbitrary error.
2012-06-19 23:09:29 -07:00
Alex Shinn
37b796e0f0 DragonFly build support patch from ctismyusername. 2012-06-19 22:47:15 -07:00
Alex Shinn
c903a73921 adding ascii and full unicode char-set libraries based on isets 2012-06-17 19:36:17 +09:00
Alex Shinn
14a46feec9 adding iset optimization utility lib 2012-06-17 19:07:54 +09:00
Alex Shinn
855af6120b sexp_release_object fix from Ben Weaver - wasn't releasing
the first object in the list.
2012-06-14 22:37:10 +09:00
Alex Shinn
f9c640f180 non-string-stream get-output-string concatenated chunks in reverse
order for accumulated output longer than the buffer size (4096 chars)
2012-06-14 10:52:36 +09:00
Alex Shinn
a78919200f Fixing number literal syntax using exponents with an explicit '+'. 2012-06-14 10:22:26 +09:00
Alex Shinn
78734b806d Making repl completion insert the longest common prefix before
showing candidates.
2012-06-14 09:07:16 +09:00
Alex Shinn
028a260247 Replacing string-ref uses with string-cursor-ref. 2012-06-14 09:03:37 +09:00
Alex Shinn
c9e579f9f4 removing debug line 2012-06-13 00:24:54 +09:00
Alex Shinn
034601a02b fixing iset cursors to do proper in-order traversal 2012-06-12 23:02:10 +09:00
Alex Shinn
06d82e5695 fixing bignum integer-length for real 2012-06-10 23:06:44 +09:00
Alex Shinn
dc70094472 Allowing arbitrary length #\xNNNN char literals. 2012-06-10 17:50:42 +09:00
Alex Shinn
8d5ea4cdf4 making literals embedded in the source immutable 2012-06-10 14:22:22 +09:00
Alex Shinn
638558ebe0 initial (iset) integer-set library based on chicken implementation 2012-06-07 01:36:08 +09:00
Alex Shinn
25247ee4b5 Fixing integer-length for bignums. 2012-06-07 00:48:43 +09:00
Alex Shinn
6ca990016a Fixing bug in bignum<->fixnum bitwise-[ix]or modifying inputs instead of outputs (oops). 2012-06-05 00:16:22 +09:00
Alex Shinn
fa0c699a6c Fixing unsigned integer bug in bit-set?. 2012-06-04 23:25:31 +09:00
Alex Shinn
befe63d6ba Using brace-notation for write/ss for records not containing any shares. 2012-06-02 20:11:54 +09:00
Alex Shinn
a56b497a00 fixing bug in srfi-38 for reading ellipsis 2012-05-23 23:27:02 +09:00
Alex Shinn
cb6d16a8f1 fixing combinatorial explosion of code in certain match or patterns 2012-05-23 23:21:35 +09:00
Alex Shinn
c4bf82842c updates for changes from results of the fifth ballot 2012-05-20 18:44:25 +09:00
Alex Shinn
c8f13f8538 Adding (scheme cxr) library, removing all other references to c[ad]{3,4]r. 2012-05-20 15:16:11 +09:00
Alex Shinn
120a887b3d highlighter should output a string in extra-paren error case, not a char 2012-05-20 15:12:09 +09:00
Alex Shinn
057f6b2dea Removing debug code not meant for commit. 2012-05-19 07:54:07 +09:00