]>
git.mdlowis.com Git - proto/sclpl.git/log
Michael D. Lowis [Mon, 11 Jun 2018 01:59:30 +0000 (21:59 -0400)]
added float types
Michael D. Lowis [Mon, 4 Jun 2018 02:51:34 +0000 (22:51 -0400)]
added primitive type cehcking
Michael D. Lowis [Sat, 2 Jun 2018 02:11:20 +0000 (22:11 -0400)]
added codegen module and code to register bindings with symbol table
Michael D. Lowis [Fri, 1 Jun 2018 01:31:25 +0000 (21:31 -0400)]
added symbol table implementation and registered builtins
Michael D. Lowis [Thu, 31 May 2018 01:58:17 +0000 (21:58 -0400)]
stubbed out basic symtable api
Michael D. Lowis [Thu, 31 May 2018 01:17:55 +0000 (21:17 -0400)]
Added type node constructors
Michael D. Lowis [Wed, 30 May 2018 16:37:58 +0000 (12:37 -0400)]
sketch out additional top-level constructs
Michael D. Lowis [Wed, 30 May 2018 16:24:58 +0000 (12:24 -0400)]
added support for constant and variable bindings at the top level
Michael D. Lowis [Sat, 26 May 2018 01:48:10 +0000 (21:48 -0400)]
added typedef and prototypes for data type definitions
Michael D. Lowis [Thu, 24 May 2018 02:18:37 +0000 (22:18 -0400)]
minor refactoring and added = token
Michael D. Lowis [Thu, 24 May 2018 01:12:39 +0000 (21:12 -0400)]
removed unused functions
Michael D. Lowis [Wed, 23 May 2018 20:41:55 +0000 (16:41 -0400)]
checkpoint commit
Michael D. Lowis [Wed, 23 May 2018 02:41:20 +0000 (22:41 -0400)]
rework identifier parsing
Michael D. Lowis [Wed, 23 May 2018 01:59:09 +0000 (21:59 -0400)]
stripped down parser
Michael D. Lowis [Wed, 23 May 2018 00:49:57 +0000 (20:49 -0400)]
minor refactoring
Michael D. Lowis [Mon, 21 May 2018 20:06:15 +0000 (16:06 -0400)]
minor refactoring of parser context and helper functions
Michael D. Lowis [Mon, 21 May 2018 13:55:49 +0000 (09:55 -0400)]
fixed segfault in parser
Michael D. Lowis [Mon, 21 May 2018 02:57:07 +0000 (22:57 -0400)]
attempted handling token parsing with a single token struct instead of heap allocating each one
Michael D. Lowis [Sun, 20 May 2018 18:48:54 +0000 (14:48 -0400)]
stripped down grammar. ignoring broken specs for now
Michael D. Lowis [Sun, 20 May 2018 01:07:06 +0000 (21:07 -0400)]
refactored
Michael D. Lowis [Sun, 20 May 2018 00:46:46 +0000 (20:46 -0400)]
changed parser to disallow expressions at topelevel
Michael D. Lowis [Sat, 19 May 2018 19:43:15 +0000 (15:43 -0400)]
removed remnants of GC
Michael D. Lowis [Sat, 19 May 2018 19:01:11 +0000 (15:01 -0400)]
removed gc stuff. opting for a lack of memory management in general
Michael D. Lowis [Sat, 19 May 2018 18:15:58 +0000 (14:15 -0400)]
disable function literal tests
Michael D. Lowis [Sat, 19 May 2018 02:01:22 +0000 (22:01 -0400)]
remove unused files and rework headers
Michael D. Lowis [Sat, 19 May 2018 01:14:31 +0000 (21:14 -0400)]
removed anf and C code generation
Michael D. Lowis [Wed, 31 Aug 2016 02:14:02 +0000 (22:14 -0400)]
Added basic recognition of types and type annotations
Mike Lowis [Tue, 30 Aug 2016 19:48:17 +0000 (15:48 -0400)]
Added token type for ':' in preparation for type annotations
Mike Lowis [Tue, 30 Aug 2016 19:43:08 +0000 (15:43 -0400)]
Makefile cleanup
Mike Lowis [Tue, 30 Aug 2016 19:38:18 +0000 (15:38 -0400)]
Remove vim project file from repo
Mike Lowis [Tue, 30 Aug 2016 19:37:41 +0000 (15:37 -0400)]
commented out problematic tests. investigate later
Mike Lowis [Mon, 22 Feb 2016 18:15:24 +0000 (13:15 -0500)]
Added deep comparison of values to the check functions
Mike Lowis [Mon, 22 Feb 2016 17:55:23 +0000 (12:55 -0500)]
Added preliminary attempt at lua version of rspec tests
Mike Lowis [Mon, 25 Jan 2016 09:35:16 +0000 (09:35 +0000)]
Added tokens to the lexer in order to eliminnate the *_str parser functions
Michael D. Lowis [Sun, 24 Jan 2016 22:06:53 +0000 (17:06 -0500)]
Converted handwritten lexer to flex based lexer
Mike Lowis [Tue, 29 Dec 2015 14:46:09 +0000 (14:46 +0000)]
Added basic unit test framework to allow more invasive and targeted testing
Mike Lowis [Tue, 29 Dec 2015 14:13:58 +0000 (14:13 +0000)]
checkpoint commit. stuff's broke. Add some tests before attempting to fix it
Michael D. Lowis [Tue, 29 Dec 2015 03:28:06 +0000 (22:28 -0500)]
First attempt at generating code for if statements. horribly broken.
Michael D. Lowis [Tue, 29 Dec 2015 01:44:00 +0000 (20:44 -0500)]
Started working on preliminary code generation
Michael D. Lowis [Mon, 28 Dec 2015 23:37:50 +0000 (18:37 -0500)]
Finished anf transformation
Michael D. Lowis [Mon, 28 Dec 2015 01:29:57 +0000 (20:29 -0500)]
Half-implemented ANF transformation
Michael D. Lowis [Sun, 20 Dec 2015 21:32:51 +0000 (16:32 -0500)]
Implemented ANF transformation for function applications
Michael D. Lowis [Fri, 18 Dec 2015 02:28:23 +0000 (21:28 -0500)]
Started implementing the anf conversion phase
Michael D. Lowis [Thu, 17 Dec 2015 02:46:57 +0000 (21:46 -0500)]
Started laying the groundwork for a-normalization pass
Mike Lowis [Wed, 16 Dec 2015 12:20:27 +0000 (12:20 +0000)]
Updated readme
Mike Lowis [Wed, 16 Dec 2015 12:08:44 +0000 (12:08 +0000)]
Removed commented out code and cleaned up some odds and ends
Mike Lowis [Tue, 15 Dec 2015 16:37:41 +0000 (16:37 +0000)]
Removed todos
Mike Lowis [Tue, 15 Dec 2015 16:25:34 +0000 (16:25 +0000)]
Updated usage line
Mike Lowis [Tue, 15 Dec 2015 15:06:54 +0000 (15:06 +0000)]
Restructured lexer code with more consistent styling and layout
Mike Lowis [Tue, 15 Dec 2015 09:26:42 +0000 (09:26 +0000)]
Combined parser and grammar files as they are not *really* independent
Mike Lowis [Tue, 15 Dec 2015 09:11:06 +0000 (09:11 +0000)]
Implemented function application syntax
Michael D. Lowis [Tue, 15 Dec 2015 03:54:37 +0000 (22:54 -0500)]
Started adding function application to the parser
Mike Lowis [Mon, 14 Dec 2015 12:04:06 +0000 (12:04 +0000)]
Added reference count handling to new AST functions
Michael D. Lowis [Sun, 13 Dec 2015 03:41:40 +0000 (22:41 -0500)]
Completed function literal parsing
Michael D. Lowis [Sat, 12 Dec 2015 05:05:27 +0000 (00:05 -0500)]
Implemented function syntax for functions with no arguments
Mike Lowis [Fri, 11 Dec 2015 12:52:49 +0000 (12:52 +0000)]
Switched to posix/plan9 style option parser
Mike Lowis [Fri, 11 Dec 2015 16:43:29 +0000 (16:43 +0000)]
Switched build over to plain-old Makefile
Mike Lowis [Fri, 20 Nov 2015 14:15:11 +0000 (09:15 -0500)]
Delete submodules
Mike Lowis [Fri, 20 Nov 2015 14:14:17 +0000 (09:14 -0500)]
Removed submodules
Mike Lowis [Fri, 20 Nov 2015 14:08:46 +0000 (09:08 -0500)]
Pulled in source files for option parsing library. No longer any dependence on submodules
Mike Lowis [Fri, 20 Nov 2015 13:45:52 +0000 (08:45 -0500)]
Tweaked expression grammar rule
Mike D. Lowis [Wed, 14 Oct 2015 18:33:50 +0000 (14:33 -0400)]
Added grammar rule for if statements with optional else branch and optional then keyword
Mike D. Lowis [Wed, 14 Oct 2015 00:24:44 +0000 (20:24 -0400)]
Added ast functions for if statments and blocks
Mike D. Lowis [Tue, 13 Oct 2015 20:44:59 +0000 (16:44 -0400)]
Added vector implementation in preparation for block AST nodes
Mike D. Lowis [Tue, 13 Oct 2015 17:05:19 +0000 (13:05 -0400)]
Fixed valgrind errors for garbage collector and implemented proper destructor for AST nodes
Michael D. Lowis [Tue, 13 Oct 2015 02:29:26 +0000 (22:29 -0400)]
Implemented basic value definitions
Mike D. Lowis [Mon, 12 Oct 2015 20:41:18 +0000 (16:41 -0400)]
implemented grammar rule for sclpl
Michael D. Lowis [Mon, 12 Oct 2015 01:42:08 +0000 (21:42 -0400)]
Parser now recognizes variable references and literals
Michael D. Lowis [Sat, 10 Oct 2015 03:32:33 +0000 (23:32 -0400)]
Delete errant file
Michael D. Lowis [Sat, 10 Oct 2015 03:23:20 +0000 (23:23 -0400)]
Comment out unused specs temporarily
Michael D. Lowis [Sat, 10 Oct 2015 03:00:20 +0000 (23:00 -0400)]
flattened source directory structure
Michael D. Lowis [Sat, 10 Oct 2015 02:38:33 +0000 (22:38 -0400)]
added garbage collector
Michael D. Lowis [Sat, 10 Oct 2015 01:17:19 +0000 (21:17 -0400)]
removed vector references from libparse
Michael D. Lowis [Sat, 10 Oct 2015 01:08:59 +0000 (21:08 -0400)]
Deleted unused code
Mike D. Lowis [Fri, 9 Oct 2015 20:28:29 +0000 (16:28 -0400)]
Checkpoint commit
Mike D. Lowis [Tue, 6 Oct 2015 18:59:45 +0000 (14:59 -0400)]
Started reworking the grammar to use an item stack to build the syntax trees
Mike D. Lowis [Tue, 6 Oct 2015 14:35:11 +0000 (10:35 -0400)]
Lexer tests are now passing
Michael D. Lowis [Tue, 6 Oct 2015 02:38:03 +0000 (22:38 -0400)]
Almost finished reworking lexer
Mike D. Lowis [Mon, 5 Oct 2015 20:45:36 +0000 (16:45 -0400)]
Started rework of lexer and parser
Mike D. Lowis [Fri, 2 Oct 2015 19:23:23 +0000 (15:23 -0400)]
Renamed grammar and lexer functions
Mike D. Lowis [Fri, 2 Oct 2015 18:21:37 +0000 (14:21 -0400)]
Refactored libparse to use a single header and removed unused tree_walker types
Mike D. Lowis [Fri, 2 Oct 2015 16:18:55 +0000 (12:18 -0400)]
Refeactored the sclpl parsing library
Mike D. Lowis [Thu, 10 Sep 2015 16:19:32 +0000 (12:19 -0400)]
Deleted unused scheme sources
Michael D. Lowis [Thu, 10 Sep 2015 02:04:43 +0000 (22:04 -0400)]
Delete unused files
Michael D. Lowis [Fri, 9 Jan 2015 19:48:09 +0000 (14:48 -0500)]
Changed return type for tree_walk
Michael D. Lowis [Thu, 8 Jan 2015 19:13:42 +0000 (14:13 -0500)]
Added tree walking functionality to the tree module
Michael D. Lowis [Tue, 18 Nov 2014 01:41:46 +0000 (20:41 -0500)]
Moved parser into a static lib
Michael D. Lowis [Sat, 15 Nov 2014 03:32:14 +0000 (22:32 -0500)]
Updated libopts
Michael D. Lowis [Sat, 15 Nov 2014 03:30:55 +0000 (22:30 -0500)]
refactored to minimze amount of code in main.c
Michael D. Lowis [Sat, 15 Nov 2014 01:51:43 +0000 (20:51 -0500)]
Merge branch 'integrate-llvm' of github.com:mikedlowis/sclpl into integrate-llvm
Michael D. Lowis [Fri, 14 Nov 2014 19:52:20 +0000 (14:52 -0500)]
Added port handling functions to runtime
Michael D. Lowis [Tue, 4 Nov 2014 23:44:47 +0000 (18:44 -0500)]
Merge branch 'integrate-llvm' of github.com:mikedlowis/sclpl into integrate-llvm
Michael D. Lowis [Tue, 4 Nov 2014 20:47:35 +0000 (15:47 -0500)]
sclpl can now find it's own damn header (when run with a path prefix only)
Michael D. Lowis [Tue, 4 Nov 2014 17:55:32 +0000 (12:55 -0500)]
Updated build-system flags
Michael D. Lowis [Tue, 4 Nov 2014 17:50:22 +0000 (12:50 -0500)]
Added a semi-complete method for finding the location of the executable and by extension the include directory containing the runtime header
Michael D. Lowis [Tue, 4 Nov 2014 00:29:25 +0000 (19:29 -0500)]
updated libopts version
Michael D. Lowis [Mon, 3 Nov 2014 22:11:23 +0000 (17:11 -0500)]
Updated version of libopts and removed janky handling of program name in argument list
Michael D. Lowis [Mon, 3 Nov 2014 02:17:36 +0000 (21:17 -0500)]
use unix standard 'cc' for c compiler
Michael D. Lowis [Mon, 3 Nov 2014 02:07:42 +0000 (21:07 -0500)]
Switched from trollop to optparse
Michael D. Lowis [Sun, 2 Nov 2014 17:14:54 +0000 (12:14 -0500)]
Updated build-scripts