Tim Vaughan [Sat, 5 Nov 2016 05:50:07 +0000 (18:50 +1300)]
quasiquote and unquote working.
Tim Vaughan [Sat, 5 Nov 2016 01:08:38 +0000 (14:08 +1300)]
Updated readme.
Tim Vaughan [Sat, 5 Nov 2016 01:05:17 +0000 (14:05 +1300)]
Working on quasiquote.
Tim Vaughan [Fri, 4 Nov 2016 23:51:46 +0000 (12:51 +1300)]
Added (error)
Tim Vaughan [Fri, 4 Nov 2016 23:51:44 +0000 (12:51 +1300)]
Fixed bug in (display)
Tim Vaughan [Fri, 4 Nov 2016 23:51:34 +0000 (12:51 +1300)]
Added forth-level exception handling to repl.
Tim Vaughan [Thu, 3 Nov 2016 19:51:09 +0000 (08:51 +1300)]
Added exception handling words.
Tim Vaughan [Tue, 1 Nov 2016 08:56:22 +0000 (21:56 +1300)]
Implemented read-level portion of quasiquote forms.
Tim Vaughan [Tue, 1 Nov 2016 08:46:46 +0000 (21:46 +1300)]
Updated README.
Tim Vaughan [Tue, 1 Nov 2016 08:44:18 +0000 (21:44 +1300)]
Very basic macros working.
Tim Vaughan [Tue, 1 Nov 2016 08:38:20 +0000 (21:38 +1300)]
Implemented (reverse list).
Tim Vaughan [Tue, 1 Nov 2016 08:35:16 +0000 (21:35 +1300)]
Simplified iterative define expansion.
Tim Vaughan [Tue, 1 Nov 2016 07:55:03 +0000 (20:55 +1300)]
Allowed recursive define expansion.
Tim Vaughan [Tue, 1 Nov 2016 07:54:36 +0000 (20:54 +1300)]
Simplified apply.
Tim Vaughan [Tue, 1 Nov 2016 07:54:24 +0000 (20:54 +1300)]
Apply now linked to procedure instead of symbol.
Tim Vaughan [Mon, 31 Oct 2016 11:59:32 +0000 (00:59 +1300)]
Added apply primitive and used it to implement append.
Tim Vaughan [Mon, 31 Oct 2016 10:50:23 +0000 (23:50 +1300)]
Added display primitives.
Tim Vaughan [Mon, 31 Oct 2016 02:05:58 +0000 (15:05 +1300)]
Added testing code back in.
Tim Vaughan [Sun, 30 Oct 2016 03:37:16 +0000 (16:37 +1300)]
Nutting out macro issues.
Tim Vaughan [Sun, 30 Oct 2016 01:12:00 +0000 (14:12 +1300)]
Finished draft macro implementation
Tim Vaughan [Thu, 27 Oct 2016 21:25:21 +0000 (10:25 +1300)]
Added lookup-macro and make-macro.
Tim Vaughan [Thu, 27 Oct 2016 12:59:20 +0000 (01:59 +1300)]
Implementing macros.
Tim Vaughan [Sat, 29 Oct 2016 02:09:05 +0000 (15:09 +1300)]
Added support for variadic compound procedures.
Tim Vaughan [Thu, 27 Oct 2016 04:07:15 +0000 (17:07 +1300)]
Implemented begin. Added none object for empty returns.
Tim Vaughan [Thu, 27 Oct 2016 03:46:09 +0000 (16:46 +1300)]
Fixed stack hygiene bug.
Tim Vaughan [Thu, 27 Oct 2016 03:37:19 +0000 (16:37 +1300)]
Refactor to allow begin.
Tim Vaughan [Tue, 25 Oct 2016 04:06:08 +0000 (17:06 +1300)]
Updated README.
Tim Vaughan [Tue, 25 Oct 2016 04:03:54 +0000 (17:03 +1300)]
Added load primitive.
Tim Vaughan [Tue, 25 Oct 2016 03:57:32 +0000 (16:57 +1300)]
Load now returns result of last expression.
Tim Vaughan [Tue, 25 Oct 2016 03:46:06 +0000 (16:46 +1300)]
Implemented load word. (Now just need scheme prim.)
Tim Vaughan [Tue, 25 Oct 2016 00:27:08 +0000 (13:27 +1300)]
Updated README.
Tim Vaughan [Tue, 25 Oct 2016 00:07:53 +0000 (13:07 +1300)]
Mark-sweep garbage collection working.
Tim Vaughan [Mon, 24 Oct 2016 23:16:52 +0000 (12:16 +1300)]
Primitives are now GC-safe.
Tim Vaughan [Mon, 24 Oct 2016 03:40:52 +0000 (16:40 +1300)]
GC working when invoked between evaluations.
Now need to deal with root objects on the parameter stack.
Tim Vaughan [Sun, 23 Oct 2016 03:16:36 +0000 (16:16 +1300)]
Debugging GC.
Tim Vaughan [Sun, 23 Oct 2016 03:06:38 +0000 (16:06 +1300)]
Added OOM check.
Tim Vaughan [Sun, 23 Oct 2016 02:52:34 +0000 (15:52 +1300)]
Marked compound procedure type as pairlike.
Tim Vaughan [Sun, 23 Oct 2016 02:48:43 +0000 (15:48 +1300)]
Implemented scaffolding for mark+sweep GC.
Tim Vaughan [Sat, 22 Oct 2016 03:43:54 +0000 (16:43 +1300)]
Working on GC.
Tim Vaughan [Wed, 12 Oct 2016 10:20:57 +0000 (23:20 +1300)]
Fixed broken realnum? procedure.
Tim Vaughan [Sat, 13 Aug 2016 11:42:25 +0000 (23:42 +1200)]
Can now read and print reals.
Tim Vaughan [Sat, 30 Jul 2016 11:55:57 +0000 (23:55 +1200)]
Working on FP arithmetic.
Tim Vaughan [Mon, 25 Jul 2016 11:06:24 +0000 (23:06 +1200)]
Working on exception handling.
Tim Vaughan [Mon, 25 Jul 2016 11:04:23 +0000 (23:04 +1200)]
Fixed TCO bug.
Tim Vaughan [Fri, 22 Jul 2016 09:15:19 +0000 (21:15 +1200)]
Fixed bug in apply.
Tim Vaughan [Fri, 22 Jul 2016 08:24:41 +0000 (20:24 +1200)]
Added tail-call optimization.
Tim Vaughan [Fri, 22 Jul 2016 08:24:39 +0000 (20:24 +1200)]
Implemented compound procedure application.
Tim Vaughan [Fri, 22 Jul 2016 08:24:35 +0000 (20:24 +1200)]
Added define syntax for procedure generation.
Tim Vaughan [Fri, 22 Jul 2016 08:24:28 +0000 (20:24 +1200)]
Implemented lambda (and λ)!
Tim Vaughan [Fri, 22 Jul 2016 08:24:23 +0000 (20:24 +1200)]
Factored out application into apply.
Tim Vaughan [Fri, 22 Jul 2016 08:24:00 +0000 (20:24 +1200)]
Working on compound procedures.
Tim Vaughan [Thu, 21 Jul 2016 10:05:12 +0000 (22:05 +1200)]
Primitive fixnum relations working.
Tim Vaughan [Thu, 21 Jul 2016 09:46:25 +0000 (21:46 +1200)]
Implemented fixnum =.
Tim Vaughan [Thu, 21 Jul 2016 08:52:17 +0000 (20:52 +1200)]
Fixed cons, set-car! and set-cdr!
Tim Vaughan [Thu, 21 Jul 2016 08:29:26 +0000 (20:29 +1200)]
Adding pair/list primitives.
Tim Vaughan [Thu, 21 Jul 2016 08:29:22 +0000 (20:29 +1200)]
Added more primitives.
Tim Vaughan [Thu, 21 Jul 2016 08:29:17 +0000 (20:29 +1200)]
eatspaces now eats comments
Tim Vaughan [Thu, 21 Jul 2016 08:29:10 +0000 (20:29 +1200)]
string->number works.
Tim Vaughan [Thu, 21 Jul 2016 08:28:58 +0000 (20:28 +1200)]
number->string works.
Tim Vaughan [Wed, 20 Jul 2016 18:56:12 +0000 (06:56 +1200)]
Debugging number->string
Tim Vaughan [Tue, 19 Jul 2016 22:09:00 +0000 (10:09 +1200)]
Updated README and added license.
Tim Vaughan [Tue, 19 Jul 2016 20:25:45 +0000 (08:25 +1200)]
Added some type conversion prims.
Tim Vaughan [Tue, 19 Jul 2016 20:14:06 +0000 (08:14 +1200)]
Added predicate primitives.
Tim Vaughan [Tue, 19 Jul 2016 11:20:38 +0000 (23:20 +1200)]
Added * and - fixnum primitives
Tim Vaughan [Tue, 19 Jul 2016 10:39:40 +0000 (22:39 +1200)]
Fixed fixnum detection in parser.
Tim Vaughan [Tue, 19 Jul 2016 10:27:20 +0000 (22:27 +1200)]
First primitive procedure working!
Tim Vaughan [Tue, 19 Jul 2016 10:07:32 +0000 (22:07 +1200)]
Completed draft of primitive application.
Tim Vaughan [Tue, 19 Jul 2016 10:00:37 +0000 (22:00 +1200)]
Adding first primitive procedure.
Tim Vaughan [Tue, 19 Jul 2016 08:33:23 +0000 (20:33 +1200)]
Tiny refactor.
Tim Vaughan [Tue, 19 Jul 2016 08:35:11 +0000 (20:35 +1200)]
Added conditionals.
Tim Vaughan [Tue, 19 Jul 2016 08:34:54 +0000 (20:34 +1200)]
def/set/lookup are working!
Tim Vaughan [Mon, 18 Jul 2016 02:34:37 +0000 (14:34 +1200)]
Debugging.
Tim Vaughan [Mon, 18 Jul 2016 02:18:17 +0000 (14:18 +1200)]
Typos
Tim Vaughan [Mon, 18 Jul 2016 02:12:11 +0000 (14:12 +1200)]
Finished full draft of set/def/lookup support.
Tim Vaughan [Mon, 18 Jul 2016 01:36:46 +0000 (13:36 +1200)]
Finished core environment definitions.
Tim Vaughan [Sun, 17 Jul 2016 02:04:58 +0000 (14:04 +1200)]
Working on set!
Tim Vaughan [Sat, 16 Jul 2016 10:42:36 +0000 (22:42 +1200)]
Added variable lookup.
Tim Vaughan [Sat, 16 Jul 2016 02:04:05 +0000 (14:04 +1200)]
Adding environments.
Tim Vaughan [Sat, 16 Jul 2016 23:45:42 +0000 (11:45 +1200)]
Relaxed symbol parsing rules.
Tim Vaughan [Wed, 13 Jul 2016 11:13:45 +0000 (23:13 +1200)]
Implemented quote.
Tim Vaughan [Tue, 12 Jul 2016 12:05:46 +0000 (00:05 +1200)]
Started adding support for pre-defined symbols.
Tim Vaughan [Tue, 12 Jul 2016 11:34:25 +0000 (23:34 +1200)]
Implemented symbols.
Tim Vaughan [Tue, 12 Jul 2016 06:10:07 +0000 (18:10 +1200)]
Debugging symbol table.
Tim Vaughan [Mon, 11 Jul 2016 19:33:16 +0000 (07:33 +1200)]
Updated readme.
Tim Vaughan [Mon, 11 Jul 2016 19:31:45 +0000 (07:31 +1200)]
Working on symbol table lookup
Tim Vaughan [Mon, 11 Jul 2016 11:43:41 +0000 (23:43 +1200)]
Implementing symbols.
Tim Vaughan [Sun, 10 Jul 2016 05:57:02 +0000 (17:57 +1200)]
Implemented strings.
Tim Vaughan [Sun, 10 Jul 2016 04:50:10 +0000 (16:50 +1200)]
Updated readme.
Tim Vaughan [Sun, 10 Jul 2016 04:49:17 +0000 (16:49 +1200)]
Added readme.
Tim Vaughan [Sun, 10 Jul 2016 04:25:01 +0000 (16:25 +1200)]
Fixed pair read/print.
Tim Vaughan [Sun, 10 Jul 2016 04:06:46 +0000 (16:06 +1200)]
Fixing up pair read/print
Tim Vaughan [Wed, 6 Jul 2016 22:25:23 +0000 (00:25 +0200)]
Almost have pairs in.
First cons cells created!
Tim Vaughan [Wed, 6 Jul 2016 21:44:10 +0000 (23:44 +0200)]
Finished defer/is.
Tim Vaughan [Tue, 5 Jul 2016 23:13:31 +0000 (01:13 +0200)]
Added defer/is to support mutual recursion.
Tim Vaughan [Tue, 5 Jul 2016 21:45:36 +0000 (23:45 +0200)]
Implemented the empty list.
Tim Vaughan [Tue, 5 Jul 2016 21:24:42 +0000 (23:24 +0200)]
Character parsing works.
Tim Vaughan [Tue, 5 Jul 2016 06:40:49 +0000 (08:40 +0200)]
Almost done with characters.
Tim Vaughan [Mon, 4 Jul 2016 22:15:56 +0000 (00:15 +0200)]
Draft character atom implementation.
Tim Vaughan [Mon, 4 Jul 2016 22:07:15 +0000 (00:07 +0200)]
Better handling of booleans.
Tim Vaughan [Mon, 4 Jul 2016 22:01:58 +0000 (00:01 +0200)]
Implemented parse index stack.