Commit graph

4075 commits

Author SHA1 Message Date
Justin Ethier
2097251f5e
Update CHANGELOG.md 2018-04-30 14:03:44 -04:00
Justin Ethier
18245025bb Issue #249 2018-04-30 14:02:22 -04:00
Justin Ethier
6be7a259ff Merge remote-tracking branch 'origin/master' 2018-04-30 14:00:45 -04:00
Justin Ethier
20379a264c Issue #249 - Improve hash table performance
Hardcode bound such that it is not a bignum (reducing bignum allocations).

Replace symbol hash with a more efficient algorithm, since symbols are uniquely identified by memory location as well as name.
2018-04-30 13:59:22 -04:00
Justin Ethier
cc96f10326 Issue #246 2018-04-26 17:25:07 -04:00
Justin Ethier
0282227d7a Issue #246 - Very basic bracket support 2018-04-26 17:23:13 -04:00
Justin Ethier
03c254de14 Issue #247 - Fix mnemonic/hex escapes for syms
Escapes are now properly parsed for symbols.
2018-04-26 17:09:38 -04:00
Justin Ethier
9090952300 Issue #252 - Fix off-by-one error
When decrementing the length to account for newlines, also decrement the code point count.
2018-04-02 13:47:01 -04:00
Justin Ethier
b7e465af17 Issue #248 2018-03-26 13:08:19 -04:00
Justin Ethier
867c23b17a New file for Issue #248 2018-03-26 11:21:56 -04:00
Justin Ethier
ebc68e6746 Issue #248 - Ensure unique lambda ID's/args
During a beta expansion, renumber lambda ID's and rename lambda args if necessary so that we do not introduce duplicates. Dupes are a problem as they throw of the analysis DB and can lead to the optimizer inserting the wrong values when code is optimized-out.
2018-03-24 19:23:30 -04:00
Justin Ethier
282fb0793c Added (ast:get-next-lambda-id!) 2018-03-24 18:40:30 -04:00
Justin Ethier
a750383cd1 Version bump 2018-02-15 18:29:58 -05:00
Justin Ethier
65a1a9f07a Preparing 0.7.2 2018-02-15 18:10:52 -05:00
Justin Ethier
00c2ab4e39 Remove dead code 2018-02-15 17:42:11 -05:00
Justin Ethier
8064ebef5f Issue #243 - Edge case that comes up w/match
This was never handled properly but never noticed it until doing expansions for the match macros.
2018-02-15 17:09:18 -05:00
Justin Ethier
57d679ec22 Fixup test 2018-02-14 13:07:36 -05:00
Justin Ethier
41dc8ff120 Speedup local env lookup 2018-02-14 13:00:54 -05:00
Justin Ethier
2cd96058eb Add fast assoc by cdr 2018-02-14 13:00:43 -05:00
Justin Ethier
488b6e162c Adding temporary debug traces 2018-02-13 19:05:41 -05:00
Justin Ethier
e81f5b72bd Enable renaming of lambda vars in analyze 2018-02-13 13:23:02 -05:00
Justin Ethier
5e2df83b2d Added local-renamed placeholder
There are complications with just enabling this, though
2018-02-08 23:36:38 -05:00
Justin Ethier
99ca3323b0 Remove debug output 2018-02-08 22:42:21 -05:00
Justin Ethier
cfe4c90b5c Experimenting with using macro:expand 2018-02-08 17:49:05 -05:00
Justin Ethier
acde9d9b30 Added debugging code 2018-02-07 19:20:57 -05:00
Justin Ethier
ee0b7c181c Experimenting with rename-env
Define a single env and pass it through (analyze) to allow for more powerful macro expansions.
2018-02-06 18:23:50 -05:00
Justin Ethier
85df40fa1c WIP, staging changes to fix match macro 2018-02-06 13:34:45 -05:00
Justin Ethier
b22d1d906d Cleanup 2018-02-05 15:56:59 -05:00
Justin Ethier
be164f523e Removed errant macro 2018-02-05 13:23:03 -05:00
Justin Ethier
5d639fe17a Revisions 2018-02-05 13:21:58 -05:00
Justin Ethier
63b8a02f16 Updated API index 2018-02-02 14:44:09 +00:00
Justin Ethier
b2a1de3a68 Add missing newline 2018-02-02 14:28:20 +00:00
Justin Ethier
4db530d7e4 Consolidate links to fix doc script error 2018-02-02 14:26:15 +00:00
Justin Ethier
cecff21c24 Add match, remove old macro module 2018-02-01 18:07:57 -05:00
Justin Ethier
4a3c68a7d3 Prevent a compiler error when there is only one argument to + or *. 2018-02-01 17:42:05 -05:00
Justin Ethier
142dbc3fb4 Temporarily enable code that generates a compiler error 2018-02-01 13:38:57 -05:00
Justin Ethier
ba3b016c43 Cleanup, add both record type tests from docs 2018-02-01 13:31:31 -05:00
Justin Ethier
1d91ace450 Fix slot-ref 2018-02-01 13:25:19 -05:00
Justin Ethier
f3d2cd8176 Record type fixes 2018-01-31 19:09:01 -05:00
Justin Ethier
aafe5f0d68 Record type enhancements 2018-01-31 19:08:47 -05:00
Justin Ethier
070ea54ab1 New test group 2018-01-31 17:13:10 -05:00
Justin Ethier
ab92070e8c More testing 2018-01-31 16:25:57 -05:00
Justin Ethier
68bc9a45c0 WIP 2018-01-31 16:08:12 -05:00
Justin Ethier
11b02a618b More test cases 2018-01-31 16:03:12 -05:00
Justin Ethier
875583655a Install meta file 2018-01-31 16:00:42 -05:00
Justin Ethier
e4615d69aa Purge old files 2018-01-31 13:19:55 -05:00
Justin Ethier
4babcabe0e Purge old file 2018-01-31 13:19:18 -05:00
Justin Ethier
e394d5f573 Remove temporary file 2018-01-31 13:18:39 -05:00
Justin Ethier
f2b020d412 New file for testing purposes only 2018-01-31 13:16:42 -05:00
Justin Ethier
ed840958e9 Added new test file 2018-01-31 12:56:28 -05:00