upscheme/femtolisp
JeffBezanson 494e439510 using lisp value stack for call frames instead of the C stack
adding the ability to grow the value stack as needed

the net effect is that calls use much less space, and stack frames
can use all available heap space. the only downside is that C builtins
must be aware that the stack can change out from under them if they call
lisp code. currently the only example of this is table.foldl.

also fixing bug where exceptions failed to unwind the gc handle stack.
2009-07-03 18:43:15 +00:00
..
ast some renaming (intern is now symbol) and moving stuff around 2009-06-30 03:21:41 +00:00
attic initial implementation of let-syntax 2009-03-17 21:53:55 +00:00
lib adding gc handles, making evaluator stack static 2009-05-19 02:54:56 +00:00
site removing some redundant/irrelevant files 2008-08-30 05:05:31 +00:00
tiny import femtolisp source 2008-07-01 01:54:22 +00:00
100x100.lsp import femtolisp source 2008-07-01 01:54:22 +00:00
FLOSSING fixed some small flaws in (compare) 2008-08-30 22:18:20 +00:00
LICENSE changing license, since google code does not support the CPL 2008-08-30 02:56:46 +00:00
Makefile adding the ability for the VM to use computed goto where available 2009-06-28 19:47:11 +00:00
aliases.scm some renaming (intern is now symbol) and moving stuff around 2009-06-30 03:21:41 +00:00
ascii-mona-lisa support reading hex float literals 2008-11-23 07:12:37 +00:00
ascii-mona-lisa-2 support reading hex float literals 2008-11-23 07:12:37 +00:00
bootstrap.sh adding *error-stream* variable 2009-05-05 23:51:13 +00:00
builtins.c some renaming (intern is now symbol) and moving stuff around 2009-06-30 03:21:41 +00:00
color.lsp adding #b, #o, #d, #x numeric literals 2009-02-01 01:53:58 +00:00
compiler.lsp adding maxstack calculation and stack overflow protection 2009-06-27 23:07:22 +00:00
cps.lsp some renaming (intern is now symbol) and moving stuff around 2009-06-30 03:21:41 +00:00
cvalues.c updating doc 2009-05-31 22:27:37 +00:00
equal.c some cleanup 2009-05-30 02:52:22 +00:00
equal.scm import femtolisp source 2008-07-01 01:54:22 +00:00
equalhash.c adding equalhash.c 2008-11-28 21:44:59 +00:00
equalhash.h adding equalhash.c 2008-11-28 21:44:59 +00:00
flisp.boot adding maxstack calculation and stack overflow protection 2009-06-27 23:07:22 +00:00
flisp.c using lisp value stack for call frames instead of the C stack 2009-07-03 18:43:15 +00:00
flisp.h allowing multiple expressions in lambda 2009-05-29 04:38:50 +00:00
iostream.c adding opcodes loada0, loada1, loadc00, loadc01 2009-06-08 03:22:32 +00:00
mkboot0.lsp updating interpreter to work better for bootstrapping 2009-04-23 00:55:03 +00:00
mkboot1.lsp adding *error-stream* variable 2009-05-05 23:51:13 +00:00
opaque_type_template.c switching to scheme #t, #f, and () values 2009-01-29 01:04:23 +00:00
opcodes.h adding the ability for the VM to use computed goto where available 2009-06-28 19:47:11 +00:00
perf.lsp adding maxstack calculation and stack overflow protection 2009-06-27 23:07:22 +00:00
pisum.lsp switching to scheme #t, #f, and () values 2009-01-29 01:04:23 +00:00
print.c fixing bug printing functions involved in cycles 2009-05-21 00:56:25 +00:00
printcases.lsp removing some unnecessary stuff 2009-03-23 20:44:19 +00:00
read.c adding integer division function div 2009-05-14 01:30:25 +00:00
rule30.lsp making 3rd argument to string.sub optional 2009-05-07 02:10:52 +00:00
string.c adding string.width 2009-05-31 22:09:26 +00:00
system.lsp making append a builtin 2009-06-15 02:25:21 +00:00
table.c using lisp value stack for call frames instead of the C stack 2009-07-03 18:43:15 +00:00
tcolor.lsp faster append 2009-05-30 21:13:13 +00:00
test.lsp making append a builtin 2009-06-15 02:25:21 +00:00
todo using lisp value stack for call frames instead of the C stack 2009-07-03 18:43:15 +00:00
todo-scrap import femtolisp source 2008-07-01 01:54:22 +00:00
torture.scm optimizations to map and case 2009-06-11 00:34:50 +00:00
torus.lsp some cleanup, removing some unnecessary global bindings 2009-04-08 18:17:02 +00:00
types.c adding dump, memstream, io.read, and io.write 2009-03-02 04:26:16 +00:00
unittest.lsp implementing support for lambdas with up to 2^32-1 required arguments 2009-06-06 21:15:54 +00:00
wt.lsp converting for to a special form 2009-04-16 03:05:38 +00:00