Commit graph

539 commits

Author SHA1 Message Date
Justin Ethier
1e2dac3026 Free memory buffer after closing port 2016-08-25 23:58:40 -04:00
Justin Ethier
4aec9a341f Added mem-streams module 2016-08-25 23:38:34 -04:00
Justin Ethier
b05c51d344 TODO 2016-08-24 18:54:06 -04:00
Justin Ethier
a7bf1a094a Issue #88 - Proper apply semantics with opt args 2016-08-22 23:36:33 -04:00
Justin Ethier
218902038f Do not include leading 0's in binary strings 2016-08-19 00:45:56 -04:00
Justin Ethier
1c27b280e8 Improve error messages 2016-08-15 23:11:10 -04:00
Justin Ethier
4d5a1cc076 Issue #90 - Typecheck port argument 2016-08-10 19:01:32 -04:00
Justin Ethier
bb2a3bb031 Issue #90 - Check for cdr being a value type
Also cleaned up the display/write pair printing code a bit by using Cyc_is_pair.
2016-08-10 17:50:56 -04:00
Justin Ethier
99dce9d628 Issue #90 - modify write to print string escapes 2016-08-08 18:33:17 -04:00
Justin Ethier
fd71dc336f Refactoring 2016-08-04 20:22:52 -04:00
Justin Ethier
560667eef6 Only use 96-byte object heap on 64-bit platforms 2016-08-03 03:23:16 -04:00
Justin Ethier
918e78cb21 Added another size heap (96 bytes) 2016-08-01 18:48:58 -04:00
Justin Ethier
6a50eff1e0 Fix compilation of Cyc-compilation-environment 2016-07-29 17:36:23 -04:00
Justin Ethier
5eeef5d992 Added (Cyc-compilation-environment) 2016-07-30 03:12:17 -04:00
Justin Ethier
b96a9fcedd Added Cyc_compilation_environment() 2016-07-30 01:48:27 -04:00
Justin Ethier
129f02d70d Added safe cxr macros 2016-07-29 19:57:15 -04:00
Justin Ethier
3cceb2f84c Eliminate compiler warning 2016-07-29 03:16:42 -04:00
Justin Ethier
fe65274c77 Added Cyc_car / Cyc_cdr 2016-07-28 23:34:03 -04:00
Justin Ethier
9c04662938 Use fgets for read-line 2016-07-26 21:36:33 -04:00
Justin Ethier
fa24f4db37 Unsafe cell functions 2016-07-25 23:26:43 -04:00
Justin Ethier
1fa07c1e0f Handle error better 2016-07-24 22:20:45 -04:00
Justin Ethier
cfb3209648 Fixed compiler warning, replaced hexstr2int 2016-07-20 22:06:25 -04:00
Justin Ethier
d6f5a81f2d Fixed compiler warnings 2016-07-19 23:02:21 -04:00
Justin Ethier
2b7525655b Cleanup 2016-07-15 23:31:48 -04:00
Justin Ethier
1c0c0bb315 Change how mutations are stored in memory
Use a reallocated memory buffer instead of malloc'd pairs. This should speed things up by reducing the number of allocations and by keeping mutations in contiguous sections of memory.
2016-07-15 23:14:36 -04:00
Justin Ethier
9e2a51fdae Refactoring 2016-07-15 21:22:50 -04:00
Justin Ethier
f75b077270 Added (Cyc-macro?) 2016-07-14 22:18:46 -04:00
Justin Ethier
3f28243075 Use string_len macro instead of strlen() 2016-07-14 03:22:43 -04:00
Justin Ethier
7caa67a51c Include function name in args error 2016-07-12 21:05:45 -04:00
Justin Ethier
13ce612768 Massive speedup comparing certain types of lists 2016-07-07 21:42:12 -04:00
Justin Ethier
8e0e7309a2 Bug fixes 2016-07-07 23:39:49 -04:00
Justin Ethier
6794da5159 WIP - equalp with checks for circular lists 2016-07-07 23:24:39 -04:00
Justin Ethier
aac1c44b3d Attempt to allocate huge vectors on the heap 2016-07-06 23:38:57 -04:00
Justin Ethier
f526eeb6f3 Populate huge object heap 2016-07-06 23:07:43 -04:00
Justin Ethier
10286604e6 Issue #78 - Print doubles diffently than ints
Fixed problem where sometimes the decimal and trailing 0 are not printed for a double, which makes differentiating between ints/doubles confusing.
2016-07-06 02:53:54 -04:00
Justin Ethier
36c124fa80 Added TODO 2016-07-05 23:34:38 -04:00
Justin Ethier
655b56e390 Do not automatically convert floats to ints 2016-07-05 23:09:12 -04:00
Justin Ethier
b5ccb51feb Simplify macro following setjmp, just like closcall
A very minor improvement, but it technically improves performance and does simplify the code.
2016-07-04 22:51:14 -04:00
Justin Ethier
199b685de3 Use only one comparison in closcall macros
This improves performance a bit since these macros are called after almost every C function.
2016-07-04 22:42:35 -04:00
Justin Ethier
02e8b343c7 Fix Cyc_has_cycle to compare cons cells
Compare the cons cells themselves - instead of values - to determine if there is a cycle. By definition the pointers will be different unless there is a cycle.
2016-07-02 02:42:32 -04:00
Justin Ethier
f86132591d Issue #69 - Removed symtbl size checks
libck already does this internally
2016-07-01 21:53:36 -04:00
Justin Ethier
c9d93dd0b2 Bug fixes 2016-07-01 01:07:25 -04:00
Justin Ethier
9cf016e1a6 More cleanup, generalize apply_va logic 2016-06-29 22:55:18 -04:00
Justin Ethier
4f65fdb6e2 Cleanup 2016-06-29 22:41:42 -04:00
Justin Ethier
63e476839f va_args version of apply for eval 2016-06-29 22:14:58 -04:00
Justin Ethier
552fb19822 Added TODO's 2016-06-30 00:45:06 -04:00
Justin Ethier
67c00ae7ed WIP version of dispatch_apply_va 2016-06-30 00:09:17 -04:00
Justin Ethier
c46a8e57f6 WIP - apply with varargs 2016-06-28 23:01:50 -04:00
Justin Ethier
378b5f1c3e Experimenting with MRG32k3a 2016-06-20 22:50:35 -04:00
Justin Ethier
81d5a9e524 Issue #10 - Add vector support to (write). 2016-06-19 22:55:23 -04:00