Justin Ethier
82e14fe9c4
Experimental changes:
...
1) Disable beta expansion (causes exponential growth problems on compiler benchmark, needs more fine-tuning)
2) Do not inline assoc/member functions since they loop (needs performance analysis)
2018-12-21 21:49:52 -05:00
Justin Ethier
c564400f5a
Classify apply functions as mutators
...
We don't know if the functions they call will mutate or not, so err on the side of caution. Not sure this is really necessary since they receive a cont and therefore cannot be inlined anyway.
2018-12-21 21:48:57 -05:00
Justin Ethier
a53af18f89
Issue #287 - Check for list before calling (length)
2018-12-20 13:25:52 -05:00
Justin Ethier
f617f8b102
Remove unnecessary #include
2018-12-19 16:39:15 -05:00
Justin Ethier
58e2809330
Use hashsets
2018-12-19 14:24:20 -05:00
Justin Ethier
0e797cde1e
Cleanup
2018-12-19 13:39:21 -05:00
Justin Ethier
61cb34fe52
Fix lib name
2018-12-19 13:32:31 -05:00
Justin Ethier
57f74fa836
Initial file
2018-12-19 13:28:34 -05:00
Justin Ethier
56597cbe57
New lib
2018-12-19 13:27:45 -05:00
Justin Ethier
be929189b6
Initial file
2018-12-19 13:27:19 -05:00
Justin Ethier
f9b503edd8
Initial file
2018-12-19 13:27:05 -05:00
Justin Ethier
c05a2602d2
Faster compilation
2018-12-18 23:02:21 -05:00
Justin Ethier
40c0b9734f
When profiling include -g
2018-12-18 23:01:06 -05:00
Justin Ethier
9727e9f86c
Use memq instead of member
...
We are looking up symbols so memq can be used instead, which is must faster at scale.
2018-12-18 22:01:27 -05:00
Justin Ethier
70b27ccd22
Speed up free-vars checking for primitives
...
We know prims are only symbols, so instead of checking for primitives in the top-level cond (which is expensive) we check for it as a sub-condition off of the (ref?) condition. This lets us avoid a call to memq unless we already are inspecting a symbol.
2018-12-18 22:00:19 -05:00
Justin Ethier
dd9b612be4
Disable debug printing
2018-12-18 17:32:57 -05:00
Justin Ethier
06d900bea9
Added TODO
2018-12-18 17:08:17 -05:00
Justin Ethier
d075a3a34a
Report elapsed time
2018-12-18 17:07:57 -05:00
Justin Ethier
a46a9e92d3
Pre-sort the list of globals
...
This cuts down on the amount of work that must be done by the alpha conversion.
2018-12-18 16:33:24 -05:00
Justin Ethier
e864049136
Remove experimental code
2018-12-18 16:25:24 -05:00
Justin Ethier
49017f5731
Latest attempt to speed this up
2018-12-18 13:20:43 -05:00
Justin Ethier
4ac97adb32
WIP
2018-12-18 13:19:23 -05:00
Justin Ethier
10bfe42eff
WIP
2018-12-18 13:11:12 -05:00
Justin Ethier
41d35279d0
Added TODO, comments
2018-12-18 10:08:53 -05:00
Justin Ethier
cbb8357f66
WIP - fast insert
2018-12-17 18:32:25 -05:00
Justin Ethier
0a4f027f89
Use inline fnc directly
2018-12-17 18:29:43 -05:00
Justin Ethier
d913b951dc
Added tests for fast-insert
2018-12-17 18:24:36 -05:00
Justin Ethier
dda952122b
WIP
2018-12-17 18:23:13 -05:00
Justin Ethier
4a165bd5fb
New test file
2018-12-17 17:49:00 -05:00
Justin Ethier
1450d2520e
Added placeholder code
2018-12-17 12:54:20 -05:00
Justin Ethier
68e91f2408
WIP
2018-12-16 19:03:15 -05:00
Justin Ethier
506452654f
Issue #286
2018-12-14 17:50:29 -05:00
Justin Ethier
f4face2ef0
Include latest bug fix
2018-12-14 17:17:11 -05:00
Justin Ethier
991172ed88
Increment the year
2018-12-14 17:15:50 -05:00
Justin Ethier
2e215adafb
Added 'make bench'
2018-12-14 15:03:52 -05:00
Justin Ethier
d54a0130c0
Issue #284 - Fix how udf:prims are compiled
2018-12-14 14:04:19 -05:00
Justin Ethier
dc34eef03b
Add bootstrap to 'make full'
2018-12-14 13:28:52 -05:00
Justin Ethier
c6aa29d7ab
Extend case for udf's
2018-12-14 13:28:37 -05:00
Justin Ethier
aaddb3c403
Added 'make full'
2018-12-14 13:19:06 -05:00
Justin Ethier
dbca1ee36e
Get back up-and-running as a program
2018-12-13 18:22:46 -05:00
Justin Ethier
0862070e52
Reorganize, disable new code for now
2018-12-12 18:55:41 -05:00
Justin Ethier
27d4c3e95f
Added TODO
2018-12-12 17:33:43 -05:00
Justin Ethier
2336200f10
Faster (list?)
2018-12-12 13:44:14 -05:00
Justin Ethier
2d9ba5a9e3
New version of (list?)
2018-12-12 13:43:47 -05:00
Justin Ethier
9eddbb812b
Version bump
2018-12-12 13:30:40 -05:00
Justin Ethier
7c8076e433
Added Cyc_is_list()
2018-12-12 13:10:10 -05:00
Justin Ethier
ac78347d59
Remove temp file
2018-12-09 17:16:52 -05:00
Justin Ethier
320fda9b9d
Releasing 0.9.6
2018-12-09 17:00:34 -05:00
Justin Ethier
f6219f5d87
Fill out the 0.9.6 section
2018-12-07 17:39:31 -05:00
Justin Ethier
d5690a001e
Do not assume return_copy
receives an object.
...
It may be passed a call instead, in which case we want to refer to the call as a local variable instead of making that call more than once!
2018-12-07 17:00:32 -05:00