yasi

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent timeline items

2014-02-28
05:43 • Edit [3a170fd49379a629|3a170fd493]: Edit check-in comment. (user: martin)
05:38
[c672fd13e0] Leaf: Improve read_string() (user: martin, tags: trunk)
00:02
[3a170fd493] Simplify read_symbol() just using fscanf(). (user: martin, tags: trunk)
2014-02-27
02:57
[9d80c1f603] Sort specials alphabetically. (user: martin, tags: trunk)
00:51
[22654b85e4] Move special form implementations from primitives.c to eval.c (user: martin, tags: trunk)
00:37
[6275487288] t -> true_symbol, f -> false_symbol. (user: martin, tags: trunk)
2014-02-16
20:14
[b5c5d459fd] Make set() clearer. (user: martin, tags: trunk)
18:31
[f64385430b] Simplify env.c a bit. mk_rib() -> add_rib(). (user: martin, tags: trunk)
14:32
[ccb951d84e] Lose precomp_lookups, it'd need to handle cond's else cases and just got tired of it; Added tests for cond and define; Bring back fexp's and base macros on them; let/let*/letrec return and add support for (define (function args) ...) sugar. (user: martin, tags: trunk)
2014-02-11
07:21
[e7e04f5335] More verbose names (str() -> get_string(), ...) and make it easier to change symbol table size (in case the code's ever used elsewhere). (user: martin, tags: trunk)
06:21 • Changes to wiki page yasi (user: martin)
06:18
[256b53ce18] Clean up/comment precomp_lookups a bit, use more verbose names in struct obj_. (user: martin, tags: trunk)
04:20 • Changes to wiki page Todo (user: martin)
04:18 • Deleted wiki page Seed (user: martin)
04:18 • Changes to wiki page yasi (user: martin)
04:16
[47aed2e0e4] Rename "seed" -> "yasi", Yet Another Scheme Interpreter. Only name I can think of that doesn't seem to be taken... (user: martin, tags: trunk)
2014-02-10
03:48
[e6defa8de4] Lose -pedantic, -Weverything already includes it. (user: martin, tags: trunk)
2014-02-08
17:40
[3aa30512ec] Squelch remaining warnings, revert precomp to using bindings. (user: martin, tags: trunk)
17:13
[4dfc3ab243] Don't return val in symtable_add. (user: martin, tags: trunk)
2014-02-07
23:00
[92740ebfa3] Previous commit was clobbered somehow, symtable_add() is void again. (user: martin, tags: trunk)
22:57
[fa28c9b5d7] gcc->clang; c89->c99; Change how tail calls are handled; Lose fexp/macro until I get around to seeing why they cared (and, probably, macro's just permanently gone); symtable now uses FNV hash rather than simple additive; clean up a bunch of warnings from clang's -Weverything (mostly making casts explicit); precomp_lookups just inlines the fn rather than its binding (again). (user: martin, tags: trunk)
2014-02-03
22:39
[72810f4097] Change symtable_add() return to void; Whitespace. (user: martin, tags: trunk)
21:53
[de38a32a11] Sanitize symbol table API. (user: martin, tags: trunk)
2014-01-30
01:05
[86d0bedb5e] More work on precomp_lookups(). (user: martin, tags: trunk)
2014-01-27
13:06
[6d667656ba] precomp_lookups() not break some internal defines ( ((lambda (x) (define car cdr) (car x)) (cons 1 2)) => 2); (gc) reports live/dead stats; indent run (user: martin, tags: trunk)
2014-01-26
03:22
[176a83201c] Inline objects into GC records. (user: martin, tags: trunk)
02:04 • Changes to wiki page Todo (user: martin)
00:45 • Changes to wiki page Todo (user: martin)
00:30
[268ef75c16] Symbol table now a hash table rather than just a linked list. (user: martin, tags: trunk)
2013-07-12
22:06
[04f342e836] eval() never returns tail_call so don't check in begin(); make macro calls replace themselves with their expansion (user: martin, tags: trunk)
02:40
[c7d5b10b7e] Rename string= -> string=?; Add string, string-length, string-ref, string-ci=?, string-copy. (user: martin, tags: trunk)
2013-07-11
23:30
[90e493ab14] Reorganize definitions/prototypes and add more assertions for primitives; Add set-car!/set-cdr!; Lose puts (user: martin, tags: trunk)
16:30
[3aade4f204] Add string= (user: martin, tags: trunk)
2013-07-10
18:53
[c7d1b17c4c] Have display/write return nil. (user: martin, tags: trunk)
2013-07-09
14:54
[43a121708d] Read/write #\newline, #\space; write '() rather than nil; rename sym_add/sym_remove to symtable_add/symtable_remove; remove last uses of err.h; add char? and macro?; have set() check for failure from lookup(). (user: martin, tags: trunk)
2013-07-07
23:46
[b488753fbd] Add macro test (user: martin, tags: trunk)
22:53
[c3b860651e] Add tests for let/let*/letrec; reimplement them via macro. (user: martin, tags: trunk)
22:22
[583cd9f5aa] Add macros. (user: martin, tags: trunk)
17:36
[a6551914e9] Add support for characters (no #\newline, #\space, etc... yet) (user: martin, tags: trunk)
17:20 • Edit [46380833e5bfef2d|46380833e5]: Edit check-in comment. (user: martin)
17:18
[46380833e5] Add read_dot(), handle floats without a leading 0, and bring back depth tracking in read.c (user: martin, tags: trunk)
2013-07-06
22:12 • Edit [5e87cf9c8c3f8034|5e87cf9c8c]: Edit check-in comment. (user: martin)
22:11
[5e87cf9c8c] Lose begin_symbol and use begin_prim in eval.c; simplify makefile, sprinkle around more assert()s; handle argless and/or. (user: martin, tags: trunk)
18:31
[29380c5fc8] Simplify vector_to_list; move pred_* to primitives.c, rename them to prim_*_p, specials renamed prim_* -> spec_*, rename any other primitives lacking prim_ prefix; Add type checking macros in types.h; Add more type assertions to primitives. (user: martin, tags: trunk)
16:06 • Changes to wiki page Seed (user: martin)
15:58 • Edit [be53e63c3744a8df|be53e63c37]: Add tag "SEED_O_1_4". (user: martin)
15:57
[be53e63c37] Welcome 0.1.4 (user: martin, tags: trunk, SEED_O_1_4)
15:55
[f6c5acdd6d] Gensym uses rand() and takes an optional symbol or string arg. (user: martin, tags: trunk)
2013-07-03
23:21
[0720e1f49b] Add back error checking for var lookups; let unquote-splicing take multiple args; add gensym, eqv? equal? and let exit take an arg; fix let (named let was broken). (user: martin, tags: trunk)
05:45
[a158b895b4] Convert numbers from ints to doubles; shuffle and/or into eval and have them tailcall their last arg if they didn't already return. (user: martin, tags: trunk)