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
Justin Ethier
00c2ab4e39
Remove dead code
2018-02-15 17:42:11 -05:00