log

age author description
Mon, 06 Jan 2014 00:48:19 -0800 Mike Pavone Improve compatibility of new parser with the old one
Sun, 05 Jan 2014 23:07:26 -0800 Mike Pavone Use a lightweight substring object in a few places in the parser to improve performance for large files.
Sun, 05 Jan 2014 20:56:25 -0800 Mike Pavone Make the successful return value from a match expression be truthy and the failure value false. This avoids an extra method call when checking the result and avoids allocating a new object when a match fails.
Sun, 05 Jan 2014 20:54:22 -0800 Mike Pavone Small fix to call to method implemented on current object check
Sun, 05 Jan 2014 20:53:35 -0800 Mike Pavone Don't rename the symbol self in quote blocks
Sun, 05 Jan 2014 19:28:09 -0800 Mike Pavone Don't expose internal helper functions in parser module
Sun, 05 Jan 2014 19:27:41 -0800 Mike Pavone Eval lambda assignments at macro expandion time so they can be called by macros
Sun, 05 Jan 2014 17:00:33 -0800 Mike Pavone Optimized implementation of character classes
Fri, 03 Jan 2014 22:13:34 -0800 Michael Pavone Support reading files larger than 1024 bytes in parser module
Fri, 03 Jan 2014 19:25:40 -0800 Michael Pavone Fix printing of function/method calls in parser module
Fri, 03 Jan 2014 19:23:47 -0800 Michael Pavone Add string method to unarymeth AST node object
Fri, 03 Jan 2014 19:14:14 -0800 Michael Pavone Fix tab escapes in old parser
Thu, 02 Jan 2014 23:42:33 -0800 Michael Pavone Fix string method of funcall nodes
Thu, 02 Jan 2014 22:49:51 -0800 Michael Pavone Fix string parsing in grammar and add it to the primlitsym rule. Add parentheses expressions. Allow parsing from a file.
Thu, 02 Jan 2014 21:04:10 -0800 Michael Pavone Implement lambdas in grammar. Make assignments an expression in grammar.
Thu, 02 Jan 2014 21:02:11 -0800 Michael Pavone Allow newlines between binary operator and the right argument to the operator
Sun, 29 Dec 2013 17:16:52 -0800 Michael Pavone Implemented arrays in grammar
Sun, 29 Dec 2013 17:09:21 -0800 Michael Pavone Implement list literals in grammar
Sun, 29 Dec 2013 14:56:46 -0800 Michael Pavone Implement all the binary operators except and/or/xor in grammar
Sun, 29 Dec 2013 14:39:54 -0800 Michael Pavone Added a new binaryOps:withHigherPrec macro to simplify specification of binary operator precedence level rules in the grammar
Sun, 29 Dec 2013 14:38:56 -0800 Michael Pavone Support macro expansion inside quoted code
Sun, 29 Dec 2013 14:25:38 -0800 Michael Pavone Added addition and multiplication precedence level operators to grammar
Sun, 29 Dec 2013 13:08:01 -0800 Michael Pavone Implemented more of the grammar. Dealt with some name conflicts along the way.
Sun, 29 Dec 2013 13:07:10 -0800 Michael Pavone Better handling for weird values being inserted into AST due to quoting
Mon, 23 Dec 2013 14:44:31 -0800 Michael Pavone Implement onePlus macro. Fix some bugs in the other matching macros. Implement integer literal parsing rules.
Mon, 23 Dec 2013 14:22:20 -0800 Michael Pavone Fix check of return value from env.find in symbol.quote so that falsey found values do not cause trouble.
Sat, 21 Dec 2013 12:08:06 -0800 Michael Pavone Implemented match:where:yield and fixed a bug in zeroPlus
Sat, 21 Dec 2013 12:07:51 -0800 Michael Pavone Switched to a less hacky implementation of hygiene and exposed more AST properties to macros
Sat, 21 Dec 2013 12:07:00 -0800 Michael Pavone Add -m flag to compiler driver to select macro expansion only
Sat, 21 Dec 2013 12:06:10 -0800 Michael Pavone Add contains? method to list
Fri, 06 Dec 2013 19:19:54 -0800 Michael Pavone Make assignments an expression in the grammar
Mon, 02 Dec 2013 00:50:16 -0800 Mike Pavone Implement match:yield macro
Sat, 30 Nov 2013 15:05:24 -0800 Mike Pavone Implement matchOne matching macro. Support more AST node types in zeroPlus matching macro.
Sat, 30 Nov 2013 15:04:52 -0800 Mike Pavone Don't compile quote expressions in C backend for now
Sat, 30 Nov 2013 15:03:47 -0800 Mike Pavone Fix some bugs and allow proper access to list literals in interpreter/macro expander
Wed, 27 Nov 2013 23:36:24 -0800 Michael Pavone Implement zeroPlus macro
Fri, 22 Nov 2013 19:37:25 -0800 Mike Pavone Initial work on pattern match macrosfor the new parser
Tue, 19 Nov 2013 22:02:11 -0800 Mike Pavone Basic implementation of macros is now working
Wed, 23 Oct 2013 19:10:03 -0700 Mike Pavone Implemented a simple interpreter to be used for macro expansion and a driver for testing it
Sun, 13 Oct 2013 20:23:08 -0700 Mike Pavone Some minor work on creating an IL backend based on the C backend
Wed, 28 Aug 2013 21:50:22 -0700 Mike Pavone Add support for the rest of the instructions currently defined in the il module in the x86 module
Wed, 28 Aug 2013 01:05:45 -0700 Mike Pavone Add code for converting IL into x86 machine code
Wed, 28 Aug 2013 01:05:29 -0700 Mike Pavone Add map method to linear dict
Wed, 28 Aug 2013 01:05:14 -0700 Mike Pavone Don't allow assignments to module variables
Tue, 27 Aug 2013 23:02:19 -0700 Mike Pavone Add a save instruction around calls if there are caller-saved registers live at call-time. Fix to2Op for skipIf and save instructions.
Tue, 27 Aug 2013 22:53:30 -0700 Mike Pavone Remove some debug print expressions
Tue, 27 Aug 2013 22:51:57 -0700 Mike Pavone Fix ireg upper, regSource returnAll and regSource needSaveForCall in x86 module
Tue, 27 Aug 2013 22:50:48 -0700 Mike Pavone Added string method to true and false modules
Tue, 27 Aug 2013 21:38:09 -0700 Mike Pavone Define methods in an object before running populate symbols on those methods to avoid a bug in which self was not properly marked as closed over due to a method not being defined when a symbol search was done
Mon, 26 Aug 2013 21:04:44 -0700 Mike Pavone Add save il instruction to save callee saved registers in function prolog
Mon, 26 Aug 2013 20:42:20 -0700 Mike Pavone Apply register assignments in il module
Mon, 26 Aug 2013 19:53:16 -0700 Mike Pavone Mostly complete register allocation in il module with a register source in the x86 module
Mon, 26 Aug 2013 19:50:17 -0700 Mike Pavone Add contains? method to linear dictionary
Mon, 26 Aug 2013 19:50:02 -0700 Mike Pavone Fix infinite loop in array join
Mon, 26 Aug 2013 18:59:38 -0700 Mike Pavone Added reverse method to lists
Mon, 26 Aug 2013 18:23:05 -0700 Mike Pavone Determine live ranges for logical registers as part of initial work on register allocator
Mon, 26 Aug 2013 18:21:57 -0700 Mike Pavone Add join method to lists
Mon, 26 Aug 2013 17:46:47 -0700 Mike Pavone Fix parse precedence problem between opsyms and symbols in assignments
Mon, 26 Aug 2013 17:27:17 -0700 Mike Pavone Add string conversion inside array join so callers don't need to worry about doing string conversions themselves
Sun, 25 Aug 2013 14:45:00 -0700 Mike Pavone Initial work on IL module