]> git.mdlowis.com Git - proto/sclpl.git/log
proto/sclpl.git
5 years agocheckpoint commit wirth
Michael D. Lowis [Wed, 2 Oct 2019 00:57:36 +0000 (20:57 -0400)]
checkpoint commit

6 years agoattempted to implement TDOP
Michael D. Lowis [Tue, 4 Jun 2019 02:07:16 +0000 (22:07 -0400)]
attempted to implement TDOP

6 years agoattempted to implement precedence climbing
Michael D. Lowis [Fri, 5 Apr 2019 03:28:39 +0000 (23:28 -0400)]
attempted to implement precedence climbing

6 years agoimplemented expression parsing based on precedence climbing / pratt parsing
Michael D. Lowis [Thu, 4 Apr 2019 02:50:29 +0000 (22:50 -0400)]
implemented expression parsing based on precedence climbing / pratt parsing

6 years agoadded beginnings of pratt parser
Michael D. Lowis [Tue, 2 Apr 2019 03:23:23 +0000 (23:23 -0400)]
added beginnings of pratt parser

6 years agorework ast constructors
Michael D. Lowis [Tue, 2 Apr 2019 01:31:07 +0000 (21:31 -0400)]
rework ast constructors

6 years agosetup test framework and added first test
Michael D. Lowis [Sun, 31 Mar 2019 03:35:12 +0000 (23:35 -0400)]
setup test framework and added first test

6 years agosimplified AST datatype
Michael D. Lowis [Sat, 30 Mar 2019 02:52:27 +0000 (22:52 -0400)]
simplified AST datatype

6 years agorename source folder and add inc folder
Michael D. Lowis [Fri, 29 Mar 2019 19:24:36 +0000 (15:24 -0400)]
rename source folder and add inc folder

6 years agostarted structuring parser to support inheritance and instrumented tracing for debug
Michael D. Lowis [Fri, 29 Mar 2019 19:15:27 +0000 (15:15 -0400)]
started structuring parser to support inheritance and instrumented tracing for debug

6 years agoadded total hack version of struct member access and UFCS
Michael D. Lowis [Fri, 29 Mar 2019 18:34:04 +0000 (14:34 -0400)]
added total hack version of struct member access and UFCS

6 years agoadded array initialization
Michael D. Lowis [Fri, 29 Mar 2019 02:09:21 +0000 (22:09 -0400)]
added array initialization

6 years agoreworked error location translator function to find the file by path in list of open...
Michael D. Lowis [Tue, 26 Mar 2019 15:32:07 +0000 (11:32 -0400)]
reworked error location translator function to find the file by path in list of open and closed files

6 years agoremoved old flex based lexer
Michael D. Lowis [Mon, 25 Mar 2019 20:08:52 +0000 (16:08 -0400)]
removed old flex based lexer

6 years agoremoved erroneously checked in files and fleshed out parser and pretty printer to...
Michael D. Lowis [Mon, 25 Mar 2019 18:17:02 +0000 (14:17 -0400)]
removed erroneously checked in files and fleshed out parser and pretty printer to dump the fully parsed AST

6 years agoresolve merge conflict
Michael D. Lowis [Fri, 22 Mar 2019 21:27:44 +0000 (17:27 -0400)]
resolve merge conflict

6 years agoadded new nodes to AST and updated parser to build the AST
Michael D. Lowis [Fri, 22 Mar 2019 21:26:11 +0000 (17:26 -0400)]
added new nodes to AST and updated parser to build the AST

6 years agorework makefile
Michael D. Lowis [Thu, 21 Mar 2019 02:58:58 +0000 (22:58 -0400)]
rework makefile

6 years agoadded api for lambda ast nodes
Michael D. Lowis [Thu, 21 Mar 2019 00:44:49 +0000 (20:44 -0400)]
added api for lambda ast nodes

6 years agoremoved typing from initial AST creation process. Will be done from the type checker...
Michael D. Lowis [Wed, 20 Mar 2019 19:50:35 +0000 (15:50 -0400)]
removed typing from initial AST creation process. Will be done from the type checker/inferrer instead.

6 years agostarted building and printing the AST nodes in the parser
Michael D. Lowis [Tue, 19 Mar 2019 02:05:54 +0000 (22:05 -0400)]
started building and printing the AST nodes in the parser

6 years agoupdated parser to record requires and provides
Michael D. Lowis [Mon, 18 Mar 2019 02:25:01 +0000 (22:25 -0400)]
updated parser to record requires and provides

6 years agocall new lexer from parser
Michael D. Lowis [Sun, 17 Mar 2019 02:31:50 +0000 (22:31 -0400)]
call new lexer from parser

6 years agoadded custom handcoded lexer
Michael D. Lowis [Sun, 17 Mar 2019 01:14:55 +0000 (21:14 -0400)]
added custom handcoded lexer

6 years agoadded function and type to support lexing multiple files
Michael D. Lowis [Sat, 16 Mar 2019 03:43:16 +0000 (23:43 -0400)]
added function and type to support lexing multiple files

6 years agocombined integer fields in the token union
Michael D. Lowis [Sat, 16 Mar 2019 02:54:55 +0000 (22:54 -0400)]
combined integer fields in the token union

6 years agoupdated token printing to reflect new token types
Michael D. Lowis [Mon, 11 Mar 2019 19:44:54 +0000 (15:44 -0400)]
updated token printing to reflect new token types

6 years agoRemoved vector implementation
Michael D. Lowis [Tue, 14 Aug 2018 16:38:48 +0000 (12:38 -0400)]
Removed vector implementation

6 years agoadded hooks for building in-memory package description
Michael D. Lowis [Tue, 14 Aug 2018 16:34:38 +0000 (12:34 -0400)]
added hooks for building in-memory package description

6 years agoadded recognition of method call syntax for functions
Michael D. Lowis [Sat, 11 Aug 2018 17:54:40 +0000 (13:54 -0400)]
added recognition of method call syntax for functions

6 years agoadded support for nested functions to the grammar
Michael D. Lowis [Tue, 7 Aug 2018 17:50:22 +0000 (13:50 -0400)]
added support for nested functions to the grammar

6 years agoadded a default main function to runtime to store off the stack bottom
Michael D. Lowis [Tue, 17 Jul 2018 19:49:15 +0000 (15:49 -0400)]
added a default main function to runtime to store off the stack bottom

6 years agosketched out gc api
Michael D. Lowis [Tue, 17 Jul 2018 03:16:36 +0000 (23:16 -0400)]
sketched out gc api

7 years agoswitched to expression based syntax with no statements
Michael D. Lowis [Fri, 29 Jun 2018 01:18:15 +0000 (21:18 -0400)]
switched to expression based syntax with no statements

7 years agofixed if statement parsing
Michael D. Lowis [Tue, 26 Jun 2018 00:07:36 +0000 (20:07 -0400)]
fixed if statement parsing

7 years agofirst attempt at if statement parsing
Michael D. Lowis [Mon, 25 Jun 2018 18:33:13 +0000 (14:33 -0400)]
first attempt at if statement parsing

7 years agoremoved symbols from the AST and pprint module
Michael D. Lowis [Mon, 25 Jun 2018 17:38:48 +0000 (13:38 -0400)]
removed symbols from the AST and pprint module

7 years agosketch out interface for package API
Michael D. Lowis [Mon, 25 Jun 2018 17:33:45 +0000 (13:33 -0400)]
sketch out interface for package API

7 years agosupport parsing multiple files for binary and library targets
Michael D. Lowis [Wed, 20 Jun 2018 20:15:05 +0000 (16:15 -0400)]
support parsing multiple files for binary and library targets

7 years agoattempted to add logic to parse multiple files into a library or binary
Michael D. Lowis [Wed, 20 Jun 2018 20:03:52 +0000 (16:03 -0400)]
attempted to add logic to parse multiple files into a library or binary

7 years agoadded parsing logic for function arguments on function definitions
Michael D. Lowis [Wed, 20 Jun 2018 12:27:18 +0000 (08:27 -0400)]
added parsing logic for function arguments on function definitions

7 years agoadded parsing rule for function calls and stubbed out hooks for if/for/while/do-while...
Michael D. Lowis [Tue, 19 Jun 2018 18:58:00 +0000 (14:58 -0400)]
added parsing rule for function calls and stubbed out hooks for if/for/while/do-while statements

7 years agowhoops.
Michael D. Lowis [Tue, 19 Jun 2018 02:48:27 +0000 (22:48 -0400)]
whoops.

7 years agoadded primitive line tracking to lexer
Michael D. Lowis [Mon, 18 Jun 2018 17:34:57 +0000 (13:34 -0400)]
added primitive line tracking to lexer

7 years agodon't define tokens for real characters. just use them directly
Michael D. Lowis [Mon, 18 Jun 2018 15:46:00 +0000 (11:46 -0400)]
don't define tokens for real characters. just use them directly

7 years agoadded struct, union, array, and pointer syntax to type expressions
Michael D. Lowis [Mon, 18 Jun 2018 15:01:57 +0000 (11:01 -0400)]
added struct, union, array, and pointer syntax to type expressions

7 years agomerge changes
Michael D. Lowis [Mon, 18 Jun 2018 13:17:37 +0000 (09:17 -0400)]
merge changes

7 years agostubbed out struct and union parsing
Michael D. Lowis [Mon, 18 Jun 2018 01:47:06 +0000 (21:47 -0400)]
stubbed out struct and union parsing

7 years agotweak top-level syntax
Michael D. Lowis [Sun, 17 Jun 2018 01:39:47 +0000 (21:39 -0400)]
tweak top-level syntax

7 years agoadded semicolons and = to type and value definitions
Michael D. Lowis [Sat, 16 Jun 2018 02:34:33 +0000 (22:34 -0400)]
added semicolons and = to type and value definitions

7 years agorenamed variable definitions in example source
Michael D. Lowis [Thu, 14 Jun 2018 17:28:54 +0000 (13:28 -0400)]
renamed variable definitions in example source

7 years agofixed first pass at function parsing
Michael D. Lowis [Thu, 14 Jun 2018 17:14:13 +0000 (13:14 -0400)]
fixed first pass at function parsing

7 years agoadded line comments and fleshed out parser a bit more
Michael D. Lowis [Thu, 14 Jun 2018 16:36:37 +0000 (12:36 -0400)]
added line comments and fleshed out parser a bit more

7 years agosketched out parser for new file structure
Michael D. Lowis [Thu, 14 Jun 2018 01:35:46 +0000 (21:35 -0400)]
sketched out parser for new file structure

7 years agoadded float types
Michael D. Lowis [Mon, 11 Jun 2018 01:59:30 +0000 (21:59 -0400)]
added float types

7 years agoadded primitive type cehcking
Michael D. Lowis [Mon, 4 Jun 2018 02:51:34 +0000 (22:51 -0400)]
added primitive type cehcking

7 years agoadded codegen module and code to register bindings with symbol table
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

7 years agoadded symbol table implementation and registered builtins
Michael D. Lowis [Fri, 1 Jun 2018 01:31:25 +0000 (21:31 -0400)]
added symbol table implementation and registered builtins

7 years agostubbed out basic symtable api
Michael D. Lowis [Thu, 31 May 2018 01:58:17 +0000 (21:58 -0400)]
stubbed out basic symtable api

7 years agoAdded type node constructors
Michael D. Lowis [Thu, 31 May 2018 01:17:55 +0000 (21:17 -0400)]
Added type node constructors

7 years agosketch out additional top-level constructs
Michael D. Lowis [Wed, 30 May 2018 16:37:58 +0000 (12:37 -0400)]
sketch out additional top-level constructs

7 years agoadded support for constant and variable bindings at the top level
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

7 years agoadded typedef and prototypes for data type definitions
Michael D. Lowis [Sat, 26 May 2018 01:48:10 +0000 (21:48 -0400)]
added typedef and prototypes for data type definitions

7 years agominor refactoring and added = token
Michael D. Lowis [Thu, 24 May 2018 02:18:37 +0000 (22:18 -0400)]
minor refactoring and added = token

7 years agoremoved unused functions
Michael D. Lowis [Thu, 24 May 2018 01:12:39 +0000 (21:12 -0400)]
removed unused functions

7 years agocheckpoint commit
Michael D. Lowis [Wed, 23 May 2018 20:41:55 +0000 (16:41 -0400)]
checkpoint commit

7 years agorework identifier parsing
Michael D. Lowis [Wed, 23 May 2018 02:41:20 +0000 (22:41 -0400)]
rework identifier parsing

7 years agostripped down parser
Michael D. Lowis [Wed, 23 May 2018 01:59:09 +0000 (21:59 -0400)]
stripped down parser

7 years agominor refactoring
Michael D. Lowis [Wed, 23 May 2018 00:49:57 +0000 (20:49 -0400)]
minor refactoring

7 years agominor refactoring of parser context and helper functions
Michael D. Lowis [Mon, 21 May 2018 20:06:15 +0000 (16:06 -0400)]
minor refactoring of parser context and helper functions

7 years agofixed segfault in parser
Michael D. Lowis [Mon, 21 May 2018 13:55:49 +0000 (09:55 -0400)]
fixed segfault in parser

7 years agoattempted handling token parsing with a single token struct instead of heap allocatin...
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

7 years agostripped down grammar. ignoring broken specs for now
Michael D. Lowis [Sun, 20 May 2018 18:48:54 +0000 (14:48 -0400)]
stripped down grammar. ignoring broken specs for now

7 years agorefactored
Michael D. Lowis [Sun, 20 May 2018 01:07:06 +0000 (21:07 -0400)]
refactored

7 years agochanged parser to disallow expressions at topelevel
Michael D. Lowis [Sun, 20 May 2018 00:46:46 +0000 (20:46 -0400)]
changed parser to disallow expressions at topelevel

7 years agoremoved remnants of GC
Michael D. Lowis [Sat, 19 May 2018 19:43:15 +0000 (15:43 -0400)]
removed remnants of GC

7 years agoremoved gc stuff. opting for a lack of memory management in general
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

7 years agodisable function literal tests
Michael D. Lowis [Sat, 19 May 2018 18:15:58 +0000 (14:15 -0400)]
disable function literal tests

7 years agoremove unused files and rework headers
Michael D. Lowis [Sat, 19 May 2018 02:01:22 +0000 (22:01 -0400)]
remove unused files and rework headers

7 years agoremoved anf and C code generation
Michael D. Lowis [Sat, 19 May 2018 01:14:31 +0000 (21:14 -0400)]
removed anf and C code generation

8 years agoAdded basic recognition of types and type annotations master
Michael D. Lowis [Wed, 31 Aug 2016 02:14:02 +0000 (22:14 -0400)]
Added basic recognition of types and type annotations

8 years agoAdded token type for ':' in preparation for type annotations
Mike Lowis [Tue, 30 Aug 2016 19:48:17 +0000 (15:48 -0400)]
Added token type for ':' in preparation for type annotations

8 years agoMakefile cleanup
Mike Lowis [Tue, 30 Aug 2016 19:43:08 +0000 (15:43 -0400)]
Makefile  cleanup

8 years agoRemove vim project file from repo
Mike Lowis [Tue, 30 Aug 2016 19:38:18 +0000 (15:38 -0400)]
Remove vim project file from repo

8 years agocommented out problematic tests. investigate later
Mike Lowis [Tue, 30 Aug 2016 19:37:41 +0000 (15:37 -0400)]
commented out problematic tests. investigate later

9 years agoAdded deep comparison of values to the check functions
Mike Lowis [Mon, 22 Feb 2016 18:15:24 +0000 (13:15 -0500)]
Added deep comparison of values to the check functions

9 years agoAdded preliminary attempt at lua version of rspec tests
Mike Lowis [Mon, 22 Feb 2016 17:55:23 +0000 (12:55 -0500)]
Added preliminary attempt at lua version of rspec tests

9 years agoAdded tokens to the lexer in order to eliminnate the *_str parser functions
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

9 years agoConverted handwritten lexer to flex based lexer
Michael D. Lowis [Sun, 24 Jan 2016 22:06:53 +0000 (17:06 -0500)]
Converted handwritten lexer to flex based lexer

9 years agoAdded basic unit test framework to allow more invasive and targeted testing
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

9 years agocheckpoint commit. stuff's broke. Add some tests before attempting to fix it
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

9 years agoFirst attempt at generating code for if statements. horribly broken.
Michael D. Lowis [Tue, 29 Dec 2015 03:28:06 +0000 (22:28 -0500)]
First attempt at generating code for if statements. horribly broken.

9 years agoStarted working on preliminary code generation
Michael D. Lowis [Tue, 29 Dec 2015 01:44:00 +0000 (20:44 -0500)]
Started working on preliminary code generation

9 years agoFinished anf transformation
Michael D. Lowis [Mon, 28 Dec 2015 23:37:50 +0000 (18:37 -0500)]
Finished anf transformation

9 years agoHalf-implemented ANF transformation
Michael D. Lowis [Mon, 28 Dec 2015 01:29:57 +0000 (20:29 -0500)]
Half-implemented ANF transformation

9 years agoImplemented ANF transformation for function applications
Michael D. Lowis [Sun, 20 Dec 2015 21:32:51 +0000 (16:32 -0500)]
Implemented ANF transformation for function applications

9 years agoStarted implementing the anf conversion phase
Michael D. Lowis [Fri, 18 Dec 2015 02:28:23 +0000 (21:28 -0500)]
Started implementing the anf conversion phase

9 years agoStarted laying the groundwork for a-normalization pass
Michael D. Lowis [Thu, 17 Dec 2015 02:46:57 +0000 (21:46 -0500)]
Started laying the groundwork for a-normalization pass

9 years agoUpdated readme
Mike Lowis [Wed, 16 Dec 2015 12:20:27 +0000 (12:20 +0000)]
Updated readme

9 years agoRemoved commented out code and cleaned up some odds and ends parser-rework
Mike Lowis [Wed, 16 Dec 2015 12:08:44 +0000 (12:08 +0000)]
Removed commented out code and cleaned up some odds and ends