Commit graph

113 commits

Author SHA1 Message Date
Justin Ethier
bfb5d92e6a Fix compile warning 2015-05-07 21:26:59 -04:00
Justin Ethier
2c6ac71fb8 Alias call/cc and eval globals 2015-05-07 21:19:29 -04:00
Justin Ethier
92e25a8640 Fixes to get new runtime to build 2015-05-06 22:49:41 -04:00
Justin Ethier
2e4d3eb145 Mark TODO sections, need to figure these out 2015-05-06 18:21:12 -04:00
Justin Ethier
1ddadac287 Refactored globals 2015-05-06 18:20:24 -04:00
Justin Ethier
cf9fe25476 WIP 2015-05-06 18:15:16 -04:00
Justin Ethier
718fe12a2b WIP 2015-05-06 17:55:11 -04:00
Justin Ethier
106b0a9348 Refactoring WIP 2015-05-06 14:21:19 -04:00
Justin Ethier
4d04f1ddb4 Refactoring runtime to support libs 2015-05-06 13:38:59 -04:00
Justin Ethier
4230295683 Fix load_varargs to prevent local var corruption
Assigning to a varargs variable that is not passed by the C caller can result in corruption of another parameter. EG: the var contains data for another parameter, which is then changed unexpectedly. The code was rewritten to assign to a new variable, to prevent this from happening.
2015-04-23 15:06:49 -04:00
Justin Ethier
8fe0876265 halt primitive is implemented, no need for printf 2015-04-22 18:13:45 -04:00
Justin Ethier
abc37155a9 Pass actual arg to numerical op raise() 2015-04-22 13:13:33 -04:00
Justin Ethier
cfdac7963d Cleanup of runtime library 2015-04-21 17:16:29 -04:00
Justin Ethier
5118a4e456 Added prototypes for Cyc_sub, etc 2015-04-20 13:57:23 -04:00
Justin Ethier
538a010893 Allow varargs for - * / as well as + 2015-04-20 13:55:26 -04:00
Justin Ethier
178c5f622f Removed debug lines 2015-04-17 22:20:09 -04:00
Justin Ethier
897e310d44 Cleanup 2015-04-17 22:17:48 -04:00
Justin Ethier
e44ece1986 Handle receiving a primitive as the next function after GC 2015-04-17 21:54:06 -04:00
Justin Ethier
36bf695eb1 Added possible solution 2015-04-17 15:15:33 -04:00
Justin Ethier
6f4581543d Debugging icyc crash 2015-04-17 14:18:46 -04:00
Justin Ethier
060d256f4a Properly handle rt errors 2015-04-16 22:39:04 -04:00
Justin Ethier
13c9d44500 Cleanup 2015-04-16 18:10:11 -04:00
Justin Ethier
2e9562565f WIP 2015-04-16 17:24:04 -04:00
Justin Ethier
ef8b97e1b6 Added clarifying comments 2015-04-16 14:03:55 -04:00
Justin Ethier
ad14045446 Fix compilation errors 2015-04-16 13:59:37 -04:00
Justin Ethier
388d0c3017 WIP - move Cyc-current-exception-handler to runtime 2015-04-15 22:58:39 -04:00
Justin Ethier
b51e3747e2 Use a common numeric operation va_list function 2015-04-15 13:58:51 -04:00
Justin Ethier
6cadac2be8 Renamed cyc_sum family of functions 2015-04-15 13:43:02 -04:00
Justin Ethier
3193ff1dd9 Only print GC start/done when in debug mode 2015-04-15 13:37:13 -04:00
Justin Ethier
4952129efb Removed debug printf's 2015-04-15 13:32:40 -04:00
Justin Ethier
abac04c58e Replace set-cell! with set-car!
Set-cell was just a wrapper on set-car anyway, but it was failing to record a mutation, which would cause problems later on for the GC. By using set-car directly we avoid GC issues and simplify the runtime code a bit.
2015-04-15 13:30:28 -04:00
Justin Ethier
03df6405e6 debugging 2015-04-14 18:11:31 -04:00
Justin Ethier
98fc7fa642 Added varargs sum, but working through issues with segfaults 2015-04-14 13:52:14 -04:00
Justin Ethier
2de7b46904 Stubs for va-args sum 2015-04-13 22:42:41 -04:00
Justin Ethier
7f82bf2617 WIP - Cyc_raise 2015-04-10 17:46:48 -04:00
Justin Ethier
04c11eabfb Replacing __sum macro with Cyc_sum 2015-04-10 14:56:47 -04:00
Justin Ethier
5be68ec60c Experimenting with Cyc_sum 2015-04-10 14:16:15 -04:00
Justin Ethier
010d3e6a18 Modified code to account for numeric tower, fixed up number->string 2015-04-09 21:52:49 -04:00
Justin Ethier
d9add7ab54 WIP 2015-04-09 18:04:06 -04:00
Justin Ethier
b2cc35e141 Added real? and integer? 2015-04-09 17:54:35 -04:00
Justin Ethier
cbcde1e0b1 Allow (string->number) to parse floats and ints 2015-04-09 14:13:15 -04:00
Justin Ethier
ea8f56a4ee Allow (string->number) to return common type (int and double) 2015-04-08 22:59:22 -04:00
Justin Ethier
c62e035153 Building-out double type 2015-04-08 22:30:05 -04:00
Justin Ethier
b946e75a02 Fixed compiler warning 2015-03-31 22:59:14 -04:00
Justin Ethier
78fe64cb56 Replaced AFTER_LONGJMP, and misc fixes 2015-03-31 21:45:10 -04:00
Justin Ethier
456af5b6d0 Removed unnecessary code 2015-03-31 13:59:21 -04:00
Justin Ethier
dd8b1852f7 WIP - separating runtime code 2015-03-30 13:40:41 -04:00
Justin Ethier
926d7b7881 First steps toward precompiling part of the runtime 2015-03-27 17:15:03 -04:00
Justin Ethier
e8d3424125 Experimenting with an alternative approach for apply 2015-03-27 15:54:48 -04:00
Justin Ethier
e0025483a0 Tweak has-cycle to check symbols again. flip-flopping on this 2015-03-25 22:24:57 -04:00