Commit graph

66 commits

Author SHA1 Message Date
Alex Shinn
79e7f0b90d custom type printers now take a callback writer 2011-10-31 00:00:41 +09:00
Alex Shinn
8dd61e3309 Brace object literal syntax now uses a unique type identifier in addition to the name.
Types can have a unique string identifier (no API for this yet), which will be used if
present, otherwise the id will be #<tag>, where tag is the fixnum type tag.  On read,
#t may also be supplied, in which case the most recent type with the given name will
be used.
2011-10-30 17:34:18 +09:00
Alex Shinn
769ef4725d adding port-fold-case? 2011-10-30 16:33:49 +09:00
Alex Shinn
6b81fae4ec types hold on to their finalizers 2011-10-06 23:53:27 +09:00
Alex Shinn
ef14dac179 updating references to *config-env* I missed 2011-10-05 20:22:50 +09:00
Alex Shinn
7b08af0c99 input/output bytevectors 2011-10-04 20:55:47 +09:00
Alex Shinn
7ab9e88eb0 more r7rs updates 2011-10-03 20:21:39 +09:00
Alex Shinn
0856230839 outlining standard r7rs libs 2011-10-03 08:36:37 +09:00
Alex Shinn
bd32131b9d The big renaming to define-library in .sld, make it possible to pass
other version numbers than 7 to `scheme-report-environment`, providing
initial (scheme base) library.
2011-10-02 17:16:05 +09:00
Alex Shinn
4f9903db00 initial image file support 2011-09-24 17:18:35 +09:00
Alex Shinn
e2f066044d adding support for define-library and include-ci 2011-09-19 15:10:20 +09:00
Alex Shinn
f51d67a86b more numeric reader tweaks 2011-09-06 00:27:30 +09:00
Alex Shinn
4e60bba376 making inf/nan reading case-insensitive.
adding complex and ratios to definition of sexp_numberp.
2011-09-05 07:10:56 +09:00
Alex Shinn
5f7a38da19 adding read/write support for byte-vectors 2011-08-28 20:04:02 +09:00
Alex Shinn
34638780bd don't try to compile AST types users enter directly at the repl 2011-08-28 17:58:50 +09:00
Alex Shinn
10359721c4 Allowing read/write of simple object types (e.g. anything defined with define-record-type)
using a {brace} syntax.  Currently can't disambiguate different types with the same name -
need to introduce a universal id.
2011-08-28 17:49:20 +09:00
Alex Shinn
66482788ec adding support for R6RS-style \<space><newline><space> string escapes 2011-08-19 22:51:38 +09:00
Alex Shinn
54f913fa2a adding basic oom tests 2011-08-19 01:43:44 +09:00
Alex Shinn
ddb6f31d58 More complex number additions. 2011-08-05 00:07:04 +09:00
Alex Shinn
0ebd1216cc flushing out trig functions for complex numbers 2011-08-02 08:36:31 +09:00
Alex Shinn
f5e07050ef initial complex number support 2011-07-31 21:39:31 +09:00
Alex Shinn
6202f9c1ff initial exact ratio support 2011-07-31 17:34:52 +09:00
Alex Shinn
0270f52ecb typo 2011-07-14 20:50:47 +09:00
Alex Shinn
28ffc56d50 adding optional optimization for internal definitions to not box direct lambdas 2011-07-13 00:41:19 +09:00
Alex Shinn
7ddfc9f25a trying out tail jumps instead of using the tail-call opcode where possible 2011-07-04 02:22:18 +09:00
Alex Shinn
bacc7d9399 adding simple VM-level profiler 2011-07-03 21:00:11 +09:00
Alex Shinn
d7147bf67e adding reserve opcode to avoid pushing dummy values.
also adding register-optimization! primitive.
2011-06-13 20:52:42 +09:00
Alex Shinn
2961f23d1d don't bother consing up rest arguments if they're never used 2011-06-11 14:52:30 +09:00
Alex Shinn
3d939c7e87 fixing immediate flonums build 2011-05-26 08:13:12 +09:00
Alex Shinn
06b122b33c removing global types 2011-05-25 09:45:13 +09:00
Alex Shinn
07c5c7a6f8 fixing TYPE_DEFS=0 2011-05-25 09:34:48 +09:00
Alex Shinn
47add027d6 fixing SEXP_USE_GLOBAL_TYPES (may remove this soon though) 2011-05-25 09:24:32 +09:00
Alex Shinn
987b6d98fb fixing syntactic-closure free-variable references for wrapped expressions
(also renaming %env-copy! to %import)
2011-05-21 16:42:02 -07:00
Alex Shinn
78f0e9bd22 conditionally toggling isalpha/isxdigit between function or macro depending on platform
needed for plan9 where the function definitions are not provided
2011-05-19 23:32:23 -07:00
Alex Shinn
a5f85d3685 tracking source info for macros 2011-05-16 00:48:55 -07:00
Alex Shinn
c5126fb2b0 adding optional strict top-level matching for syntax-rules literals 2011-04-25 23:29:30 +09:00
Alex Shinn
9b0c057343 cleaning up initialization interface, adding sexp_load_standard_ports 2011-04-07 22:48:10 +09:00
Alex Shinn
a85cc23f31 removing accidentally committed debug code 2011-04-03 22:25:48 +09:00
Alex Shinn
0f9a23f94f -e/-p options in main had a long-standing stupid gc bug 2011-04-03 22:15:48 +09:00
Alex Shinn
017548cc46 adding string cursors, optimizing in-string(-reverse) loops 2011-03-21 14:57:52 +09:00
Alex Shinn
89f5d9ea65 adding equal?/bounded and an optimized equiv? which uses it 2011-03-21 00:46:08 +09:00
Alex Shinn
1edfa35ad8 Supporting # approximate digit values. 2011-03-20 19:43:14 +09:00
Alex Shinn
e6ba6e59a5 Adding support for case-folding. 2011-03-03 00:31:32 +09:00
Alex Shinn
afc6a96d68 Adding more OOM checks (issue #59), thanks rotty. 2011-02-27 20:53:12 +09:00
Alex Shinn
01dd712a50 resume/cc can grow the current stack if the continuation is larger
(as could happen resuming a continuation from a separate thread)
2011-02-27 18:14:22 +09:00
Alex Shinn
52d0322910 auto-growing stack to counter for the extremely small default size 2011-02-12 21:20:12 +09:00
Alex Shinn
ca46c64be5 more precise heap end checks 2011-02-12 20:20:53 +09:00
Alex Shinn
3804c0ecb2 s/gc_mark/markedp to avoid confusion with the mark command 2011-02-12 17:03:58 +09:00
Alex Shinn
3aeef15032 cleaning up gc debug 2011-02-12 17:00:55 +09:00
Alex Shinn
7fc2c9d716 promises aren't necessarily a type! 2011-02-09 10:14:41 -05:00