Commit graph

1081 commits

Author SHA1 Message Date
Justin Ethier
e2c75d3f4f Set next version as 0.9 2018-07-15 21:26:49 -04:00
Justin Ethier
75b50d8269 Slightly faster (exact-integer?) 2018-06-21 17:55:27 -04:00
Justin Ethier
2672b181ba Test optimizing simple calls to map/for-each 2018-06-20 16:59:35 -04:00
Justin Ethier
48845ce23b Experimenting with faster versions of map, for-each 2018-06-20 13:35:39 -04:00
Justin Ethier
b611520274 Optimize calls to (list) 2018-06-19 18:06:18 -04:00
Justin Ethier
f2704eb5e4 Experimenting with faster versions of (list) 2018-06-19 13:18:14 -04:00
Justin Ethier
3629e7892b Do not beta expand recursive calls 2018-06-18 13:29:27 -04:00
Justin Ethier
6a57b69517 Do not beta expand a recursive function w/itself 2018-06-15 19:04:47 -04:00
Justin Ethier
48e325d148 Clean up comments 2018-06-13 17:46:00 -04:00
Justin Ethier
027a95ed77 Issue #261 - Replaced clock() 2018-06-13 13:28:40 -04:00
Justin Ethier
b8e9d39b28 Issue #260 - Fix C compiler issue with line label 2018-06-12 17:38:12 -04:00
Justin Ethier
0d53f329e9 Issue #260 - No loop on branches allocing closures 2018-06-08 17:21:27 -04:00
Justin Ethier
9c1ea32be0 First working version for takl loops 2018-06-07 21:58:52 -04:00
Justin Ethier
e80b83440e Add debug output 2018-06-07 17:52:08 -04:00
Justin Ethier
5622698cd3 Demonstrate pulling args from analysis DB 2018-06-07 13:49:34 -04:00
Justin Ethier
8fed2b738d Added TODO 2018-06-07 13:24:58 -04:00
Justin Ethier
a61ba42a1d Compile args separately 2018-06-07 13:23:04 -04:00
Justin Ethier
b3ea8324bd Added comments, cleanup 2018-06-06 19:00:06 -04:00
Justin Ethier
0d83580fd5 WIP 2018-06-06 18:37:18 -04:00
Justin Ethier
c4c22cfad8 WIP 2018-06-06 13:10:24 -04:00
Justin Ethier
66065bb127 Output loop label 2018-06-05 17:52:25 -04:00
Justin Ethier
f021e01277 Import cps-opt so we can use analysis DB 2018-06-04 17:49:28 -04:00
Justin Ethier
d5e4603e14 Added additional debugging 2018-06-04 13:46:32 -04:00
Justin Ethier
ff94309bcc Check continuation for direct rec calls 2018-06-04 13:16:40 -04:00
Justin Ethier
2cdc9336c0 Added TODO 2018-06-01 16:49:58 -04:00
Justin Ethier
d379d1bfb3 Track direct recursive calls 2018-06-01 13:42:24 -04:00
Justin Ethier
d4633314fc Integrate finding direct rec calls 2018-06-01 13:11:37 -04:00
Justin Ethier
759ce79155 Prep for 0.8.1 2018-05-30 13:30:14 -04:00
Justin Ethier
f24c711f93 Remove trace statements 2018-05-25 15:11:22 -04:00
Justin Ethier
be25f055f0 If param is referenced in a loop (but defined outside) do not inline function into the loop 2018-05-24 16:37:04 -04:00
Justin Ethier
5a73c7b83e Integrate finding named let's 2018-05-23 18:28:33 -04:00
Justin Ethier
e92be3e80b Integrating code to find named lets 2018-05-23 14:00:51 -04:00
Justin Ethier
7dbfb64205 Added helper functions for SEXP/AST conversions
Added: ast:ast->sexp and ast:sexp->ast
2018-05-22 12:45:17 -04:00
Justin Ethier
e705824a6d Less verbose CPS debug printing 2018-05-21 13:31:37 -04:00
Justin Ethier
df0f325c00 Issue #55 2018-05-16 14:15:45 -04:00
Justin Ethier
75e48f999f Issue #55 - Support (inexact) for complex 2018-05-15 13:15:53 -04:00
Justin Ethier
1fcf947dd3 Complex number support 2018-05-14 14:20:24 -04:00
Justin Ethier
689a1d552a Issue #55 - Compile complex number literals 2018-05-11 16:06:39 -04:00
Justin Ethier
db7dc029b4 Build-out of (scheme complex) 2018-05-07 22:16:56 -04:00
Justin Ethier
335be69a12 Make (complex? z) work 2018-05-10 13:39:30 -04:00
Justin Ethier
11931bca7d Build-out make-rectangular 2018-05-10 13:24:24 -04:00
Justin Ethier
8714206b9f Issue #55 - Create a complex num object 2018-05-07 20:55:02 -04:00
Justin Ethier
7e8e82065d Bump to 0.8 2018-05-09 13:44:14 -04:00
Justin Ethier
c480470123 Issue #55 - parse out read and imag for complex 2018-05-09 13:41:39 -04:00
Justin Ethier
9e17ea628b Issue #55 - WIP parsing complex numbers 2018-05-07 19:11:12 -04:00
Justin Ethier
c1cdad0065 Issue #257 - Prevent possible infinite loop 2018-05-04 02:17:01 +00:00
Justin Ethier
cf711ffd0f Added (repl) 2018-04-30 20:21:29 -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