Justin Ethier
69a54ecb6a
Added constant folding back
2017-08-01 18:43:33 -04:00
Justin Ethier
9a9bb4079f
Disabling cyc-seq for now, since it breaks gcbench
...
Compiling with this seems to cause crashes (segfaults, etc) on the gcbench program.
2017-08-01 18:08:12 -04:00
Justin Ethier
0e5257eb91
Reverting constant folding for now
2017-08-01 13:27:49 +00:00
Justin Ethier
e8aa42e247
Issue #207 - Added comments
2017-07-27 11:43:49 +00:00
Justin Ethier
67ca9edbec
WIP
2017-07-26 19:02:31 -04:00
Justin Ethier
a758111aad
Issue #207 - Added constant folding
2017-07-26 14:52:03 +00:00
Justin Ethier
5112aa9f46
Do not precompute user defined prim
2017-07-19 18:02:20 -04:00
Justin Ethier
f2db6235e0
Issue #206 - Fix cyc-seq, and only do it as an optimization
2017-07-18 17:41:33 -04:00
Justin Ethier
a30b03767f
Revert for now
2017-07-18 13:08:16 +00:00
Justin Ethier
dd1f701d54
Export c-compile-program
2017-07-18 13:06:39 +00:00
Justin Ethier
89c58f8b44
Omit C meaningless expressions
...
When compiling Cyc-seq expressions there are cases where the generated C code would have no effect. Just omit it in this case to prevent a warning from the C compiler.
2017-07-13 10:35:10 +00:00
Justin Ethier
856f201eb0
Optimize negation
2017-07-12 12:07:41 +00:00
Justin Ethier
d78a516138
WIP - experimental optimization
2017-07-11 18:53:06 -04:00
Justin Ethier
37d510a41f
Only use Cyc-seq for non-CPSing arguments
2017-07-10 13:26:30 +00:00
Justin Ethier
8ba1954ac3
WIP
2017-07-07 18:44:13 -04:00
Justin Ethier
7bad122821
WIP
2017-07-07 17:47:24 +00:00
Justin Ethier
8ed042573a
WIP, eliminating more unused lambda's
2017-07-07 14:14:16 +00:00
Justin Ethier
2fd88a15e6
Relocate closure conversion
2017-07-07 13:03:30 +00:00
Justin Ethier
d65e7428b9
Issue #202 - Allow -A / -I options for icyc
2017-07-01 17:56:09 -04:00
Justin Ethier
1032673c8a
Bump to 0.5.4
2017-06-29 17:46:41 -04:00
Justin Ethier
52d764209b
Issue #196 - Check system folder for libraries
...
Check sys folder if a library cannot be found, before giving up and checking local dir.
2017-06-14 21:37:10 -04:00
Justin Ethier
27caeb3fbf
Added lib:check-system-path
2017-06-14 17:56:22 +00:00
Justin Ethier
a1d844c3ab
Bump to 0.5.3
2017-06-09 17:19:55 +00:00
Justin Ethier
27970524c5
Generalization of globals_changed thread param
2017-06-09 17:17:01 +00:00
Justin Ethier
57926605a5
For empty string literals, return the empty symbol
2017-06-07 17:57:49 +00:00
Justin Ethier
c06c8328f4
Bump to 0.5.2
2017-06-05 11:14:45 +00:00
Justin Ethier
aac5240a0b
Avoid calling length each iteration of for-each
...
length is O(n) so calling it should be avoided, especially for each iteration of for-each. Instead the code can just check if the first cdr is null. This has the potential for a huge speed improvement.
2017-06-02 19:25:26 -04:00
Justin Ethier
5390802816
Added adbv:ref-count
2017-05-26 15:49:56 +00:00
Justin Ethier
da2f2bb05f
Issue #201 - disabling for now
2017-05-26 15:41:46 +00:00
Justin Ethier
4e83e93cd7
Added TODO
2017-05-26 14:21:00 +00:00
Justin Ethier
a6093601de
Issue #201 - Inline if expressions
2017-05-26 14:10:25 +00:00
Justin Ethier
ce6b24cc10
WIP
2017-05-25 18:54:55 -04:00
Justin Ethier
7cdabc02b6
WIP
2017-05-25 17:46:41 -04:00
Justin Ethier
85a74f3a1e
WIP
2017-05-25 16:20:10 +00:00
Justin Ethier
7606eeeb5c
WIP
2017-05-25 13:25:03 +00:00
Justin Ethier
6118325ff4
Added opt:beta-expand
2017-05-15 18:50:37 +00:00
Justin Ethier
eee5695c1f
Bug fixes for beta expansion
2017-05-15 13:37:30 +00:00
Justin Ethier
7794f3edce
Ensure list of formals before performing list ops
2017-05-15 11:21:13 +00:00
Justin Ethier
1d36fec61e
WIP
2017-05-12 19:42:38 -04:00
Justin Ethier
341679a479
WIP - beta expansion
2017-05-12 17:30:10 +00:00
Justin Ethier
9618e35364
Experimental beta expansion code
2017-05-11 17:53:47 +00:00
Justin Ethier
d533cf6910
Use double_type as ptr type for UDF inlines
...
Cannot use common_type as it leads to segfaults when running the gcbench benchmark. There must be an alignment problem or such that seems to work most of the time but is ultimately unstable.
2017-05-09 21:44:26 +00:00
Justin Ethier
27bacda445
Use car instead of cell_get
...
car is much faster since there is no function overhead.
2017-05-09 15:33:56 +00:00
Justin Ethier
45c27f5a3a
Experimenting with wrap-mutable optimizations
2017-05-09 15:19:29 +00:00
Justin Ethier
48ee3708d5
Inline more define-c functions
2017-05-09 12:44:42 +00:00
Justin Ethier
dfdd84d585
Issue #198 - Remove custom "member" function
2017-05-08 18:44:29 -04:00
Justin Ethier
1391186a6f
Inline (exact?) and (exact-integer?)
2017-05-04 08:40:59 +00:00
Justin Ethier
93f87ac4c3
Allow inlines if a var is passed to a continuation
2017-05-04 08:22:01 +00:00
Justin Ethier
72c1bb9bea
Keep track of which refs are continuations
2017-05-04 07:03:05 +00:00
Justin Ethier
3bd5d52671
Keep track of lambda's with continuations
2017-05-04 06:50:09 +00:00