Justin Ethier
f9d03342f2
Issue #282 - assign to temporary variables
...
Do this to prevent issues when one variable's value depends upon another's.
2018-12-02 22:21:27 -05:00
Justin Ethier
69a35f7d2e
Revert I/O changes for now
2018-11-30 17:50:34 -05:00
Justin Ethier
f5b7c75184
Temporarily revert previous changes for cons
2018-11-30 17:26:45 -05:00
Justin Ethier
8ccd2b3525
WIP, seq safe allocation/assignment of pairs
2018-11-30 13:38:10 -05:00
Justin Ethier
e6e6527be7
WIP
2018-11-29 18:51:08 -05:00
Justin Ethier
e4085b2f1e
Cleanup garbage chars
2018-11-29 17:59:01 -05:00
Justin Ethier
a918f2cb2d
issue #282 - Put numeric operations in body
...
This avoids ordering issues. But I think we still have trouble with other primtives. Is there ever a legitimate need to declare a c var for a prim??? I am not seeing it, especially with our changes now for Cyc-seq.
2018-11-29 13:36:07 -05:00
Justin Ethier
32a2024094
Version bump
2018-11-28 18:59:37 -05:00
Justin Ethier
0140d8a9e5
0.9.5 release notes
2018-11-28 17:15:06 -05:00
Justin Ethier
984ddc76dc
check for list before calling (length)
2018-11-27 18:59:28 -05:00
Justin Ethier
27ca613d0a
Remove dead code
2018-11-27 18:46:29 -05:00
Justin Ethier
369b6f3c77
More static functions
2018-11-27 10:32:18 -05:00
Justin Ethier
c9551d6ac8
Revert previous change
2018-11-26 17:11:00 -05:00
Justin Ethier
ac5ee210f5
Added Cyc_string_append2
2018-11-26 16:46:27 -05:00
Justin Ethier
8f94ff12f9
Added a TODO
2018-11-26 16:07:01 -05:00
Justin Ethier
7490f01243
Clarify changes
2018-11-26 13:24:10 -05:00
Justin Ethier
262001c900
Mark internal read helper functions as static
2018-11-26 13:22:25 -05:00
Justin Ethier
7ce70739b5
Mark str2int as static
2018-11-26 13:13:17 -05:00
Justin Ethier
639d3b1438
one more static declaration
2018-11-26 11:00:28 -05:00
Justin Ethier
bdcfea1989
Version bump
2018-11-26 10:48:22 -05:00
Justin Ethier
f800f07f2b
Added 0.9.5
2018-11-26 10:47:58 -05:00
Justin Ethier
2b5253d5ca
Declare Cyc_utf8_decode as static to improve performance
2018-11-26 10:47:02 -05:00
Justin Ethier
9ccef98305
Prep to release 0.9.4
2018-11-25 16:51:20 -05:00
Justin Ethier
c1ce77a996
Merge remote-tracking branch 'origin/master'
2018-11-25 16:47:11 -05:00
Justin Ethier
257d4a4aa6
Revisions
2018-11-23 23:35:52 -05:00
Justin Ethier
ba98256ce1
Completetly revised 0.9.4 section
2018-11-23 23:08:26 -05:00
Justin Ethier
190c4a63fe
Revised 0.9.4 section
2018-11-23 22:06:41 -05:00
Justin Ethier
1145d1f8e2
Only generate a let if local var is used
...
If the variable is not used we will get a warning from the C compiler. So let's not generate a let unless the var is actually used.
We may want to revisit this later for a related optimization, maybe via Cyc-seq.
2018-11-23 21:46:51 -05:00
Justin Ethier
09f2f0412d
Added a note about let/local-var reductions
2018-11-23 12:06:23 -05:00
Justin Ethier
729c0d4025
Add check for CPS prims
2018-11-22 23:15:12 -05:00
Justin Ethier
07683bf273
Fixup alloca_list macros, we don't want the & ops
2018-11-22 18:44:18 -05:00
Justin Ethier
931b449579
Extra cases for prim use-alloca and & operator
2018-11-22 17:40:46 -05:00
Justin Ethier
b0e6c42eb1
Added prim->c-func-uses-alloca?
2018-11-22 17:33:06 -05:00
Justin Ethier
1f1b032641
Support alloca for all literals
2018-11-21 19:19:00 -05:00
Justin Ethier
e63349b830
Remove debug code
2018-11-21 19:13:32 -05:00
Justin Ethier
7a1b28db37
WIP
2018-11-21 19:08:45 -05:00
Justin Ethier
03b2dd7181
WIP
2018-11-21 18:53:50 -05:00
Justin Ethier
b0d599c0de
Added alloca_empty_vector
2018-11-21 18:53:42 -05:00
Justin Ethier
ab4f9ee7a4
WIP - alloca support for literals
2018-11-21 13:05:29 -05:00
Justin Ethier
765f6ffd8d
Added new alloca macros
2018-11-21 13:04:43 -05:00
Justin Ethier
16e1600662
Propagate use-alloca parameter for constants
2018-11-20 18:54:47 -05:00
Justin Ethier
bab9acd49e
Added c-compile-string
2018-11-20 18:07:29 -05:00
Justin Ethier
90c0d79887
Added TODO
2018-11-20 17:21:05 -05:00
Justin Ethier
16149d1492
Added failsafe
2018-11-20 13:23:10 -05:00
Justin Ethier
244f569df0
Properly handle quoted expressions
2018-11-19 18:52:11 -05:00
Justin Ethier
435bbb3a95
Revert debug code
2018-11-19 17:10:55 -05:00
Justin Ethier
4b0466f37b
Use alloca for any allocations with let/local-vars
...
This prevents situations where local variables are allocated within local scope blocks and then are assigned to pointers. This is necessary as those locals are not guaranteed to remain on the stack once the block ends, so the pointer can easily point to random memory, leading to GC corruption and/or undefined behavior.
2018-11-19 17:09:17 -05:00
Justin Ethier
4863f0d4d1
Added a DEBUG line
2018-11-19 10:32:30 -05:00
Justin Ethier
8fa6513571
Fix parens
2018-11-14 19:01:34 -05:00
Justin Ethier
a06d2793c8
Do not accumulate free vars from our local (let)'s
2018-11-14 18:22:51 -05:00