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
Justin Ethier
567e9dd2df
WIP
2019-06-04 18:46:21 -04:00
Justin Ethier
015b9b2a41
Add check for obj type
2019-06-03 13:24:42 -04:00
Justin Ethier
7bd77e1ac3
Added checks for immutable objs
2019-06-03 13:18:08 -04:00
Justin Ethier
5f517f6029
Add typecheck
2019-05-30 18:42:02 -04:00
Justin Ethier
ddd057f97b
WIP
2019-05-30 13:18:50 -04:00
Justin Ethier
d3e679fd03
Added atomic_type
2019-05-29 18:53:53 -04:00
Justin Ethier
a29e731d94
Insure optional arg pairs are mutable
2019-05-16 17:46:42 -04:00
Justin Ethier
d96231c7dd
Fix syntax error
2019-05-01 13:12:26 -04:00
Justin Ethier
3cb234402d
Added checks for immutable flag
2019-05-01 13:11:05 -04:00
Justin Ethier
465167445f
Initialize the 'immutable' field
2019-04-30 17:51:53 -04:00
Justin Ethier
8d98dc1a15
Add immutable field to the object header
2019-04-30 12:59:17 -04:00
Justin Ethier
5c717dce3a
Update comment
2019-04-22 19:01:58 -04:00
Justin Ethier
549bb59937
Micro-optimization - turn Cyc_st_add into a macro
2019-03-28 12:21:15 -04:00
Justin Ethier
3706647583
Refactoring
2019-03-21 17:16:21 -04:00
Justin Ethier
f64d429ab8
WIP
2019-02-28 09:43:58 -05:00
Justin Ethier
b2b10ca729
WIP - new version of libtommath
2019-02-17 19:00:47 -05:00
Justin Ethier
f617f8b102
Remove unnecessary #include
2018-12-19 16:39:15 -05:00
Justin Ethier
be929189b6
Initial file
2018-12-19 13:27:19 -05:00
Justin Ethier
7c8076e433
Added Cyc_is_list()
2018-12-12 13:10:10 -05:00
Justin Ethier
d5690a001e
Do not assume return_copy
receives an object.
...
It may be passed a call instead, in which case we want to refer to the call as a local variable instead of making that call more than once!
2018-12-07 17:00:32 -05:00
Justin Ethier
87267600d2
Remove data param
2018-12-05 17:39:02 -05:00
Justin Ethier
07dd9c7ef5
New fast list functions
2018-12-04 22:54:53 -05:00
Justin Ethier
aaab2de154
Fix list macro
2018-12-04 13:38:50 -05:00
Justin Ethier
069305ebdf
Cast to pointer type
2018-12-04 12:54:06 -05:00
Justin Ethier
4ce81afdc4
WIP - new listX types
2018-12-04 09:55:17 -05:00
Justin Ethier
df73875960
Add set_cell_as_expr
2018-12-03 17:57:02 -05:00
Justin Ethier
8ccd2b3525
WIP, seq safe allocation/assignment of pairs
2018-11-30 13:38:10 -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
639d3b1438
one more static declaration
2018-11-26 11:00:28 -05:00
Justin Ethier
2b5253d5ca
Declare Cyc_utf8_decode as static to improve performance
2018-11-26 10:47:02 -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
b0d599c0de
Added alloca_empty_vector
2018-11-21 18:53:42 -05:00
Justin Ethier
765f6ffd8d
Added new alloca macros
2018-11-21 13:04:43 -05:00
Justin Ethier
4824fc50ed
Increased alloca support
2018-10-26 13:03:54 -04:00
Justin Ethier
5752f6ace5
Added alloca_pair
2018-10-17 18:48:18 -04:00
Justin Ethier
15b5789e8d
Revert previous changed due to issues with SRFI 143
...
Unit tests fail with the previous change in place...
2018-10-04 11:11:16 -04:00
Justin Ethier
9e0a5c77d3
Issue #262
2018-10-01 16:48:02 -04:00
Justin Ethier
d20496318f
Added more docs
2018-08-24 13:16:29 -04:00
Justin Ethier
40c73203ce
Issue #270 - Working through a solution
2018-08-06 20:15:06 -04:00