Commit graph

4552 commits

Author SHA1 Message Date
Justin Ethier
d964b037a7 Revised previous comments 2019-02-28 15:59:40 -05:00
Justin Ethier
99d5614339 Faster version of vector 2019-02-28 14:25:03 -05:00
Justin Ethier
3bf2a6125c Fast list/vector functions also allocate mutable objs 2019-02-28 13:47:32 -05:00
Justin Ethier
f64d429ab8 WIP 2019-02-28 09:43:58 -05:00
Justin Ethier
d9f63a85b4 Revert previous change 2019-02-27 16:03:19 -05:00
Justin Ethier
1f8a824bda More efficient record type construction 2019-02-27 15:44:50 -05:00
Justin Ethier
8772c5355b Faster initialization of objects create via define-record-type 2019-02-27 14:31:14 -05:00
Justin Ethier
0f0beb024c Do not use vector-set when creating record types
This improves performance as mutations force the GC to do more work.
2019-02-27 10:29:18 -05:00
Justin Ethier
f5b68ee8d2 Handle hashing of complex nums with a 0i component 2019-02-19 13:20:29 -05:00
Justin Ethier
6bfff4b6ed Perform fixnum type check 2019-02-19 13:17:33 -05:00
Justin Ethier
db7fd2bf81 Tentative version bump 2019-02-19 13:14:05 -05:00
Justin Ethier
ed2ab18be1 Cleanup 0.9.9 fixes 2019-02-18 22:38:52 -05:00
Justin Ethier
8efbf60528 Must explicitly call (complex?) now 2019-02-18 22:12:55 -05:00
Justin Ethier
ec7c3c3308 Revert change to (integer?) for now
Causes unit test failures, need to sort this out separately.
2019-02-18 17:18:02 -05:00
Justin Ethier
b626c4c6b7 Removed extraneous char 2019-02-18 16:51:43 -05:00
Justin Ethier
990cc96e4b Adjust formatting 2019-02-18 16:50:58 -05:00
Justin Ethier
c1af2cfdcc Issue #303 2019-02-18 16:49:45 -05:00
Justin Ethier
204e31e362 Issue #303 - Handle numeric predicate edge cases
Add edge cases to (real?) for complex numbers, and (integer?) for reals.
2019-02-18 16:48:11 -05:00
Justin Ethier
5f0fa5eeea Revised 0.9.9 section 2019-02-18 13:09:41 -05:00
Justin Ethier
b4c19b1c7d Use 0.9.9 instead 2019-02-18 12:32:57 -05:00
Justin Ethier
b2997de54a Prep 0.9.8.1 bugfix release 2019-02-18 12:13:03 -05:00
Justin Ethier
102244be21 Issue #304 - gc_copy_obj must to populate bignums
Even without bignums in the nursery we still need this code in place since gc_alloc calls it, and otherwise all of the callers would need to ensure bignums are properly initialized. There may be an opportunity here for optimization, but let's make sure everything works first!
2019-02-18 12:09:31 -05:00
Justin Ethier
b2b10ca729 WIP - new version of libtommath 2019-02-17 19:00:47 -05:00
Justin Ethier
2e9a5bd9c2 Releasing 0.9.8 2019-02-15 18:04:06 -05:00
Justin Ethier
0a0f51ada5 Relocated test files 2019-02-15 17:56:26 -05:00
Justin Ethier
fa01202df8 Do not attempt to memoize functions that take 0 args 2019-02-15 12:36:54 -05:00
Justin Ethier
7021855eca Inject additional imports, added a TODO 2019-02-14 23:03:33 -05:00
Justin Ethier
d0d7fae89c Only memoize pure functions for programs
The problem with doing this for libraries is that it adds a new dependency on (srfi 69). It would be problematic to use a library with these changes as there is no easy way to know this SRFI is also a library dependency.
2019-02-14 22:53:12 -05:00
Justin Ethier
ae768b0e83 Added feature section 2019-02-14 21:11:54 -05:00
Justin Ethier
e5be007539 Added memoization optimization flags 2019-02-14 21:10:06 -05:00
Justin Ethier
12291423c7 Syntax fix 2019-02-14 17:14:18 -05:00
Justin Ethier
b01ab9a671 Add missing Cyc-memoize even if srfi 69 is there 2019-02-14 16:56:05 -05:00
Justin Ethier
70264e001e Fix injection of imports 2019-02-14 14:21:14 -05:00
Justin Ethier
f16b3fec93 WIP 2019-02-14 13:59:07 -05:00
Justin Ethier
5992123c15 REmove srfi 69 inmport 2019-02-14 13:58:57 -05:00
Justin Ethier
74148a2f16 Remove dependency on (scheme complex) 2019-02-14 13:55:56 -05:00
Justin Ethier
0604fdf221 WIP for proof of concept 2019-02-14 13:23:20 -05:00
Justin Ethier
12b6131992 Cut-over to Cyc-memoize 2019-02-14 12:47:36 -05:00
Justin Ethier
4632efc71d Added Cyc-memoize 2019-02-14 12:44:48 -05:00
Justin Ethier
53471fc4c1 Rework setting of globals and checking flags, for cps opt 2019-02-13 18:53:43 -05:00
Justin Ethier
3af8cef894 Rework to use add-globals and flag-set functions 2019-02-13 18:52:52 -05:00
Justin Ethier
94f77f6075 Added TODO's 2019-02-13 15:37:53 -05:00
Justin Ethier
a20f020f66 Emit lambda AST's 2019-02-13 15:00:38 -05:00
Justin Ethier
f6be983113 Replace unnecessary and-let* 2019-02-13 11:58:37 -05:00
Justin Ethier
2c418ec33d Fix extraction of options 2019-02-13 10:41:02 -05:00
Justin Ethier
2a91c9431e WIP 2019-02-12 18:55:10 -05:00
Justin Ethier
dab0d9a570 Extract data from pair 2019-02-12 14:03:54 -05:00
Justin Ethier
3bbd89ce2c WIP 2019-02-12 14:01:13 -05:00
Justin Ethier
e060247d8a Cleanup interface to opt:memoize-pure-fncs 2019-02-10 18:58:18 -05:00
Justin Ethier
a988582228 WIP 2019-02-10 18:48:53 -05:00