Commit graph

536 commits

Author SHA1 Message Date
Justin Ethier
3dc451d016 eqv? behavior per R7RS 2020-05-21 18:12:54 -04:00
Justin Ethier
cf6ccc25d9 Issue #377 2020-05-18 18:18:33 -04:00
Justin Ethier
81d2e70037 Issue #374 - Allow full access to open-binary prims 2020-05-17 18:35:12 -04:00
Justin Ethier
f91d5b1a30 Correctly differentiate binary/textual ports 2020-04-02 18:53:10 -04:00
Justin Ethier
479e880b30 Allow optional collection of opaque pointers 2020-03-05 13:26:17 -05:00
Justin Ethier
905bf9b330 Issue #351 - Avoid compiler warnings from clang 2020-02-28 14:28:39 -05:00
Justin Ethier
81a3cf9c2f Additional HRT logging 2020-02-05 12:59:33 -05:00
Justin Ethier
2569acae64 Cleanup 2020-01-29 23:04:58 -05:00
Justin Ethier
449e4bd425 Cleanup 2020-01-29 17:55:45 -05:00
Justin Ethier
b2e8e85f9a Rename function 2020-01-28 23:05:44 -05:00
Justin Ethier
bb44246588 Cleanup 2020-01-28 22:19:28 -05:00
Justin Ethier
95fcc2e787 Remove add_global2 2020-01-27 15:58:25 -05:00
Justin Ethier
60879432f9 Modify add_global 2020-01-27 15:45:30 -05:00
Justin Ethier
4fb6530056 Added add_global2 2020-01-27 15:26:53 -05:00
Justin Ethier
a6ce8c4ba1 Pass symbol to set-global functions 2020-01-24 14:19:10 -05:00
Justin Ethier
deb2337576 Added set-global helpers that require CPS 2020-01-23 21:46:56 -05:00
Justin Ethier
d96eb5d6f7 Removed old functions 2020-01-20 12:14:04 -05:00
Justin Ethier
ffaa9b263a Added CPS versions of mutation primitives 2020-01-16 22:43:07 -05:00
Justin Ethier
3e9da5e291 Added Cyc_file_last_modified_time 2020-01-03 13:35:38 -05:00
Justin Ethier
02fcad76f6 Added write-bytevector 2019-12-28 18:22:35 -05:00
Justin Ethier
f091d0267e Unsafe (length) 2019-11-26 23:06:01 -05:00
Justin Ethier
0651716196 Unsafe vector-set 2019-11-26 22:58:24 -05:00
Justin Ethier
c30bf50b5d Fix unsafe car/cdr 2019-11-26 16:11:57 -05:00
Justin Ethier
0e407ea9da Unsafe prims compiler option 2019-11-26 15:45:49 -05:00
Justin Ethier
537e8bc975 Experimenting with unsafe prims 2019-11-26 15:37:52 -05:00
Justin Ethier
caf1dc23ef Keep track of heap page when growing the heap 2019-11-06 17:18:47 -05:00
Justin Ethier
92bc0b6bdc Cleanup of thread data structure
Added comments, moved frequently used members to the top (call history) and infrequently used ones to the end (minor GC longjmp).
2019-11-05 13:37:05 -05:00
Justin Ethier
d209f7fd9c Tweak struct layouts 2019-11-04 15:28:40 -05:00
Justin Ethier
e0388e892a Cleanup: Removed dead code, added comments 2019-11-04 14:10:46 -05:00
Justin Ethier
1b7b3198f3 Cleanup 2019-11-04 13:00:13 -05:00
Justin Ethier
f4b81ccb73 Remove unused headers 2019-10-23 09:45:50 -04:00
Justin Ethier
e9815b4028 Handle return values of bignum calls
Created a macro BIGNUM_CALL to make it easier to handle BN retun values. This also eliminates warnings from libtommath 1.2.0 :)
2019-10-22 19:01:17 -04:00
Justin Ethier
ecb8c0388f Use new tommath 2019-10-22 12:26:55 -04:00
Justin Ethier
864dc9f9c5 No need for duplicate definition of mp_get_double 2019-10-18 12:55:18 -04:00
Justin Ethier
676187078f Fix header paths 2019-10-18 10:40:20 -04:00
Justin Ethier
d54e20fc34 Fix header path 2019-10-18 10:38:55 -04:00
Justin Ethier
d3aa33f593 Fix header names 2019-10-18 10:38:00 -04:00
Justin Ethier
c0b0bfe228 Rename files 2019-10-18 10:37:21 -04:00
Justin Ethier
e4d5ef6976 New include 2019-10-17 18:37:00 -04:00
Justin Ethier
034402df20 Initial file, port of tommath files 2019-10-17 18:36:40 -04:00
Justin Ethier
4cb5b1db40 Added vpbuffer utility functions 2019-10-09 19:01:53 -04:00
Justin Ethier
f7e6c11108 Port gc_is_stack_obj to a macro
This avoids function calls and can improve performance in extreme cases.
2019-09-26 17:24:27 -04:00
Justin Ethier
e6c23e25c1 Issue #337
Added `open-binary-input-file` and `open-binary-output-file` from R7RS.
2019-09-15 10:40:06 -04:00
Justin Ethier
60e9007d57 Speed up (complex?) 2019-09-13 12:31:18 -04:00
Justin Ethier
fccc9630cf Remove old macro 2019-08-23 10:21:58 -04:00
Justin Ethier
e099fe7860 Refactoring
Use a macro name that makes more sense, as we are trying to determine if obj is a closure.
2019-08-22 21:28:57 -04:00
Justin Ethier
9ee7c49334 Issue #297 - Complete validation for closures
Renumbered the type tags such that we can quickly check if an object is a closure or not. This will prevent crashes where an object of the wrong type (such as NULL or boolean) is passed in place of a closure. Previously we did not distinguish these objects, leading to segfaults and undefined behavior.
2019-08-22 13:41:20 -04:00
Justin Ethier
1edb877c5f Speed up vector for five args or less 2019-08-02 12:13:30 -04:00
Justin Ethier
4b6b672892 Added Cyc_is_immutable 2019-06-11 17:46:16 -04:00
Justin Ethier
d1dbd7fae9 Issue #320 - Track threads that have not yet run
This allows (thread-join!) to be able to wait on these new threads
2019-06-10 13:16:39 -04:00