Commit graph

409 commits

Author SHA1 Message Date
Justin Ethier
42507606a5 Added Cyc_string_byte_length() 2017-11-06 17:54:00 +00:00
Justin Ethier
d431b2af1c Updated Cyc_io_read_line to prevent truncation
Ensure last codepoint is fully-read before returning
2017-11-06 13:19:31 +00:00
Justin Ethier
a38295b22b WIP 2017-10-30 17:52:16 +00:00
Justin Ethier
3783da2674 WIP - obj_obj2char fixes 2017-10-30 13:17:37 +00:00
Justin Ethier
0bcce5038e WIP 2017-10-27 17:18:29 +00:00
Justin Ethier
8289eca02a Remove obsolete function 2017-10-27 13:02:51 +00:00
Justin Ethier
703f863e48 Fixes for make-string 2017-10-26 21:56:35 +00:00
Justin Ethier
aa0b0a7567 Added UTF8 encoder, final version of string->utf8 2017-10-25 18:35:11 -04:00
Justin Ethier
13e260300f Added utility function and stubs 2017-10-24 17:53:43 -04:00
Justin Ethier
3e64420101 Added UTF8 support to Cyc_substring 2017-10-23 17:43:37 -04:00
Justin Ethier
8b817966e8 WIP 2017-10-23 13:26:29 +00:00
Justin Ethier
ac8b280578 Refactoring, added make_utf8_string 2017-10-20 16:29:56 +00:00
Justin Ethier
ccad990626 Beginning to change string type 2017-10-20 13:28:16 +00:00
Justin Ethier
71c7ed3e7f Cleanup and added UTF 8 definitions to header file 2017-10-20 12:54:13 +00:00
Justin Ethier
ad4309416a Added Cyc_check_opaque 2017-10-04 17:19:24 -04:00
Justin Ethier
9f0482dafc Prevent possibility of crash 2017-08-21 23:04:40 -04:00
Justin Ethier
c7b395506b Use new buffers for in-memory I/O
New buffers are used so there is no conflict between the in-memory string/byte-vector buffer and the buffers used by `read`.
2017-08-19 18:13:05 -04:00
Justin Ethier
8b3bf050e8 Added new members for in-memory I/O 2017-08-19 18:04:39 -04:00
Justin Ethier
4b7f2cba63 Revert buffer length 2017-08-17 14:06:01 +00:00
Justin Ethier
4c5191f2b8 Added new read_len field for fread 2017-08-17 13:54:44 +00:00
Justin Ethier
bf896f6b74 Start line/col numbering from 1 (heresy!!) 2017-08-17 11:03:55 +00:00
Justin Ethier
0e2c9b6244 WIP 2017-08-12 19:22:29 -04:00
Justin Ethier
24bfd89774 WIP 2017-08-12 18:15:02 -04:00
Justin Ethier
2d7839c264 WIP 2017-08-11 17:25:14 +00:00
Justin Ethier
e9dc22a296 WIP 2017-08-11 13:40:40 +00:00
Justin Ethier
208b74b914 Rename constant 2017-08-11 11:09:09 +00:00
Justin Ethier
a9e0d86fea Add line/column numbers to port type 2017-08-11 10:13:39 +00:00
Justin Ethier
28952d1056 WIP 2017-08-10 19:03:38 -04:00
Justin Ethier
74eff82805 Added flags 2017-08-09 16:12:53 +00:00
Justin Ethier
0aa3437143 WIP 2017-07-29 20:27:43 -04:00
Justin Ethier
06d7eb1e7e Reverting temporarily 2017-07-29 19:21:43 -04:00
Justin Ethier
b8ed7225c0 Issue #142 - Statically allocate closure0
Statically allocate closure0 objects since they are immutable and contain no free variables, so all copies of them would be identical.
2017-07-27 18:59:46 -04:00
Justin Ethier
6e6a4239a4 Bug fixes 2017-07-21 13:39:55 +00:00
Justin Ethier
b8d2fda060 WIP 2017-07-21 13:03:54 +00:00
Justin Ethier
acb797e323 WIP - Experimenting with REST heap allocation 2017-07-20 17:46:08 +00:00
Justin Ethier
b913edcc9f Experimenting with inline of Cyc_is_pair 2017-07-10 13:48:44 +00:00
Justin Ethier
c550b15f3a Issue #150 - Inefficient (but working) thread-join! 2017-06-17 01:36:47 -04:00
Justin Ethier
64be028166 Added gc_is_mutator_active() 2017-06-17 01:01:59 -04:00
Justin Ethier
27970524c5 Generalization of globals_changed thread param 2017-06-09 17:17:01 +00:00
Justin Ethier
aea673c764 Added parens 2017-05-26 15:13:22 +00:00
Justin Ethier
7cdabc02b6 WIP 2017-05-25 17:46:41 -04:00
Justin Ethier
9242c424c3 WIP 2017-05-24 17:23:23 +00:00
Justin Ethier
ea2550a882 Issue #199 - More efficient memory usage
Only use a single int on the heap to store the number of huge heap allocations. There is no need to track allocations on the other heaps, at least at this time.
2017-05-10 10:12:25 +00:00
Justin Ethier
95e15dd3c2 Issue #199 - Initiate GC using huge GC alloc count
Free space does not work for huge heaps since often they are allocated on demand as a full page at a time. But if more than X huge pages have been allocated, it is probably a good time to initiate a major GC.
2017-05-09 23:01:44 +00:00
Justin Ethier
0656756ab4 Simplify logic 2017-04-24 17:58:05 +00:00
Justin Ethier
4b35ff71df Do not copy pairs
Already do not allow cons to be inlined, so it is (should be?) safe to pass any pairs directly through. Cannot make copies of any pairs except those between ptr and stack_top because that could cause equality checks to fail later on.
2017-04-24 17:40:08 +00:00
Justin Ethier
7a7419a3f4 Prevent null ref 2017-04-24 16:16:00 +00:00
Justin Ethier
5bc26c072a Added the return_copy macro 2017-04-18 23:20:51 +00:00
Justin Ethier
4b8d143627 Cleanup 2017-04-05 18:08:08 -04:00
Justin Ethier
4f724b6eaf Added inline function type 2017-04-04 08:09:30 +00:00