Commit graph

4661 commits

Author SHA1 Message Date
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
Justin Ethier
ef647082e6 WIP 2018-11-13 19:05:28 -05:00
Justin Ethier
67071a1761 WIP 2018-11-13 18:02:12 -05:00
Justin Ethier
d40dc538d9 Closure convert (let) local values 2018-11-13 18:01:54 -05:00
Justin Ethier
c4f75486b6 Added TODO 2018-11-13 17:57:44 -05:00
Justin Ethier
bad0d19424 WIP 2018-11-13 17:17:30 -05:00
Justin Ethier
04a3bb6c60 Fix splicing of let body 2018-11-13 17:17:16 -05:00
Justin Ethier
8c033a7909 Added TODO 2018-11-13 13:37:03 -05:00