]>
git.mdlowis.com Git - proto/sclpl-rb.git/log
summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Michael D. Lowis [Thu, 26 Jan 2023 21:19:52 +0000 (16:19 -0500)]
added single-level closures
Michael D. Lowis [Fri, 20 Jan 2023 21:29:05 +0000 (16:29 -0500)]
added anf pretty printing
Michael D. Lowis [Tue, 3 Jan 2023 05:00:15 +0000 (00:00 -0500)]
fleshed out an ANF based compiler based on ml
Michael D. Lowis [Wed, 28 Dec 2022 03:08:42 +0000 (22:08 -0500)]
added cerise compiler script
Michael D. Lowis [Thu, 15 Oct 2020 02:49:46 +0000 (22:49 -0400)]
corrected generation of globals
Michael D. Lowis [Thu, 15 Oct 2020 00:50:36 +0000 (20:50 -0400)]
almost have closure generation working
Michael D. Lowis [Thu, 8 Oct 2020 20:44:55 +0000 (16:44 -0400)]
fixed free variable detection and started working on code generation
Michael D. Lowis [Fri, 7 Aug 2020 20:46:07 +0000 (16:46 -0400)]
debugging free variable detection. It is still very broken. I do not know why
Michael D. Lowis [Tue, 14 Jul 2020 11:04:00 +0000 (07:04 -0400)]
funcs now have a free variable list
Michael D. Lowis [Mon, 13 Jul 2020 20:56:21 +0000 (16:56 -0400)]
cleaned up debug printing code
Michael D. Lowis [Mon, 13 Jul 2020 20:51:49 +0000 (16:51 -0400)]
added start of free variable tracking to type checker
Michael D. Lowis [Wed, 8 Jul 2020 18:36:50 +0000 (14:36 -0400)]
Added support for float literals
Michael D. Lowis [Tue, 7 Jul 2020 02:39:38 +0000 (22:39 -0400)]
added tests for type checker
Michael D. Lowis [Sat, 4 Jul 2020 03:09:33 +0000 (23:09 -0400)]
added specs for symtable
Michael D. Lowis [Fri, 3 Jul 2020 19:37:24 +0000 (15:37 -0400)]
rearrange files
Michael D. Lowis [Fri, 3 Jul 2020 19:27:34 +0000 (15:27 -0400)]
complete type inferrer/checker but buggy code generation and symbol table implementation
Michael D. Lowis [Sat, 27 Jun 2020 01:53:26 +0000 (21:53 -0400)]
added symbol table to correctly handle scoping
Michael D. Lowis [Fri, 26 Jun 2020 21:08:06 +0000 (17:08 -0400)]
checkpoint commit
Michael D. Lowis [Fri, 26 Jun 2020 01:59:16 +0000 (21:59 -0400)]
updated error messaging and inference of identifiers
Michael D. Lowis [Wed, 24 Jun 2020 20:49:03 +0000 (16:49 -0400)]
implemented basic type checking and inference
Michael D. Lowis [Wed, 24 Jun 2020 03:32:55 +0000 (23:32 -0400)]
checkin cleanup
Michael D. Lowis [Tue, 23 Jun 2020 20:37:27 +0000 (16:37 -0400)]
cleaned up dead code from old if expression syntax
Michael D. Lowis [Tue, 23 Jun 2020 20:36:22 +0000 (16:36 -0400)]
updated parser syntax and AST nodes in preparation for type checking implementation
Michael D. Lowis [Tue, 23 Jun 2020 03:23:43 +0000 (23:23 -0400)]
Merge branch 'master' of git.mdlowis.com:~/git/proto/sclpl-rb
Michael D. Lowis [Tue, 23 Jun 2020 03:23:24 +0000 (23:23 -0400)]
checkpoint commit
Michael D. Lowis [Mon, 25 May 2020 03:19:03 +0000 (23:19 -0400)]
tweaked syntax to get rid of let forms in favor of = for definitions
Michael D. Lowis [Fri, 24 Apr 2020 21:42:27 +0000 (17:42 -0400)]
experimented with one-pass code generation and started to overhaul dyn.rb with a two-pass generation assuming immutable bindings and values
Michael D. Lowis [Sun, 19 Apr 2020 18:47:22 +0000 (14:47 -0400)]
checkpoint commit before breaking out codegen stuff
Michael D. Lowis [Sun, 19 Apr 2020 18:19:17 +0000 (14:19 -0400)]
added prototype dynamically typed language compiler. Attempting to proveout closure conversion and one-pass compilation techniques
Michael D. Lowis [Fri, 14 Feb 2020 21:30:39 +0000 (16:30 -0500)]
partial implementation of canonical type lookup
Michael D. Lowis [Mon, 10 Feb 2020 20:14:55 +0000 (15:14 -0500)]
started working on code generation and type checking as a single pass
Michael D. Lowis [Mon, 10 Feb 2020 03:13:32 +0000 (22:13 -0500)]
added TODO list
Michael D. Lowis [Mon, 10 Feb 2020 03:05:22 +0000 (22:05 -0500)]
added parsing of referenced modules
Michael D. Lowis [Fri, 7 Feb 2020 21:47:25 +0000 (16:47 -0500)]
reorg code and work on module loading
Michael D. Lowis [Thu, 6 Feb 2020 02:49:21 +0000 (21:49 -0500)]
added record and array literals
Michael D. Lowis [Wed, 5 Feb 2020 21:50:30 +0000 (16:50 -0500)]
added symbol table class
Michael D. Lowis [Sat, 1 Feb 2020 19:32:37 +0000 (14:32 -0500)]
fixed up array and assignment parsing
Michael D. Lowis [Fri, 31 Jan 2020 03:20:40 +0000 (22:20 -0500)]
added declaration parsing and scaffolding for array
Michael D. Lowis [Thu, 30 Jan 2020 20:01:07 +0000 (15:01 -0500)]
added nillable types
Michael D. Lowis [Wed, 29 Jan 2020 04:06:16 +0000 (23:06 -0500)]
added member access and function calls
Michael D. Lowis [Tue, 28 Jan 2020 03:22:09 +0000 (22:22 -0500)]
implemented statement parsing
Michael D. Lowis [Mon, 27 Jan 2020 21:58:15 +0000 (16:58 -0500)]
added more scaffolding for declarations and assignments
Michael D. Lowis [Mon, 27 Jan 2020 21:54:27 +0000 (16:54 -0500)]
added return statement and scaffolding for other statements
Michael D. Lowis [Mon, 27 Jan 2020 15:25:23 +0000 (10:25 -0500)]
reorged code slightly
Michael D. Lowis [Mon, 27 Jan 2020 04:21:30 +0000 (23:21 -0500)]
tweaked syntax based on ideas from oberon
Michael D. Lowis [Fri, 20 Sep 2019 20:37:21 +0000 (16:37 -0400)]
added ada notes
Michael D. Lowis [Fri, 20 Sep 2019 03:32:04 +0000 (23:32 -0400)]
taking inspiration from ada...
Michael D. Lowis [Sat, 3 Aug 2019 02:43:01 +0000 (22:43 -0400)]
added basic arithmetic operators with proper precedence
Michael D. Lowis [Wed, 31 Jul 2019 03:19:18 +0000 (23:19 -0400)]
implemented first pass at pratt parser
Michael D. Lowis [Tue, 30 Jul 2019 21:09:05 +0000 (17:09 -0400)]
sketched out pratt parser
Michael D. Lowis [Tue, 30 Jul 2019 17:47:23 +0000 (13:47 -0400)]
added bare minimum constant parsing (only ints)
Michael D. Lowis [Tue, 30 Jul 2019 14:55:15 +0000 (10:55 -0400)]
initial commit