Commit graph

3590 commits

Author SHA1 Message Date
Justin Ethier
f25d76747d Sync up with makefile fixes from bootstrap pull req 2017-11-08 18:04:39 -05:00
Justin Ethier
4b2b866ba7 Bump to 0.7 2017-10-08 21:46:56 +00:00
Justin Ethier
d0772c2238 Allow a program to have macros expand into a top-level import expression. 2017-10-06 18:43:30 -04:00
Justin Ethier
ad4309416a Added Cyc_check_opaque 2017-10-04 17:19:24 -04:00
Justin Ethier
889ec5885e Removing "magic numbers" for GC heap size 2017-09-20 13:32:20 +00:00
Justin Ethier
40dd432b3a Merge remote-tracking branch 'origin/master' 2017-09-16 17:19:03 -04:00
Justin Ethier
86158235a8 Preparing for 0.6.3 release 2017-09-16 17:18:46 -04:00
Justin Ethier
c339234632 Issue #225 - Added error-object interfaces
This is only a rough-cut of the actual implementation, though.
2017-09-15 12:14:26 +00:00
Justin Ethier
061a6fd83a Initial file 2017-09-11 21:57:00 +00:00
Justin Ethier
4d03c00f1c Posted requirements for char-ready 2017-09-07 17:54:21 -04:00
Justin Ethier
1146e10f44 Update AUTHORS 2017-09-07 17:22:30 -04:00
Justin Ethier
330657577c Include latest fix from wasamasa 2017-09-07 13:10:28 +00:00
Justin Ethier
8fe853dfac Merge pull request #222 from wasamasa/read-string-eof-behavior
read-string: return EOF if nothing can be read
2017-09-07 13:07:47 -04:00
Vasilij Schneidermann
d731f92e7d read-string: return EOF if nothing can be read
R7RS states that there's three possible scenarios for read-string:

- More characters can be read than asked for (return string)
- Less characters can be read than asked for (return string)
- No characters can be read (return EOF)

This commit ensures the last scenario works as intended.
2017-09-07 17:07:05 +02:00
Justin Ethier
c4a569d2cd WIP 2017-09-06 22:57:39 +00:00
Justin Ethier
a274cfa6e1 Old file 2017-09-05 18:33:22 -04:00
Justin Ethier
94df8603c6 Issue #217 - Use primitives directly if possible 2017-09-05 17:44:25 -04:00
Justin Ethier
db011aa1af Issue #220 - make-string - use heap for large strs 2017-09-05 17:32:04 -04:00
Justin Ethier
2647ceb4ae WIP 2017-09-05 13:44:16 +00:00
Justin Ethier
27336b4047 Issue #219 2017-09-05 12:53:13 +00:00
Justin Ethier
8ec41e34bf Issue #218 - Fix startup issue 2017-09-04 18:57:23 -04:00
Justin Ethier
8f2a918283 Issue #217 - Optional port arg for peek-char 2017-09-04 18:38:15 -04:00
Justin Ethier
cd7d3ca7a5 Issue #221 2017-09-03 17:37:38 -04:00
Justin Ethier
12c91b86a5 Issue #217 2017-09-02 18:49:41 -04:00
Justin Ethier
572a05307a Issue #216 2017-09-01 14:03:20 +00:00
Justin Ethier
b9f461dbc5 Issue #216 - Decrement len when no newline 2017-08-31 22:19:13 +00:00
Justin Ethier
eac30107d3 Issue #216 - read-line remove trailing newlines 2017-08-31 22:02:10 +00:00
Justin Ethier
59d98aeb8c Issue #189 2017-08-29 18:42:54 -04:00
Justin Ethier
8f4e0ccf75 Issue #189 - Reimplementation of bitwise-if 2017-08-29 18:41:18 -04:00
Justin Ethier
8749981f23 Issue #215 2017-08-29 18:06:36 -04:00
Justin Ethier
945c171892 Issue #215 2017-08-29 13:52:20 +00:00
Justin Ethier
f96da8b9b6 Clarification 2017-08-29 12:32:39 +00:00
Justin Ethier
466014bc85 More cleanup 2017-08-29 12:29:11 +00:00
Justin Ethier
18976155f8 Bump to 0.6.3 2017-08-28 19:03:15 -04:00
Justin Ethier
fc49dbb52a Issue #215 - Added (->dyadic) and some conversions 2017-08-28 19:02:11 -04:00
Justin Ethier
6e896fa2d8 Link to API docs 2017-08-28 17:21:44 -04:00
Justin Ethier
667695f5c1 Front page cleanup 2017-08-28 17:09:34 -04:00
Justin Ethier
cd85a7ddde WIP 2017-08-26 19:00:45 -04:00
Justin Ethier
a3f47819df Adding instructions 2017-08-26 17:57:20 -04:00
Justin Ethier
66ab8b6416 Adding temporary test files 2017-08-26 17:56:33 -04:00
Justin Ethier
c9cc96b5c6 Removing test file 2017-08-26 17:38:51 -04:00
Justin Ethier
bf0fe10a1e Added release date 2017-08-25 18:09:22 -04:00
Justin Ethier
95463f00a4 Updated 2017-08-25 18:06:00 -04:00
Justin Ethier
b10980545d Issue #214 - Document fix 2017-08-24 21:54:38 +00:00
Justin Ethier
4be7d73e12 Issue #214 - Prevent segfault with large vectors
Large vectors are allocated directly on the heap but may contain elements that are still on the stack. To ensure all of these elements are transported to the heap during the next minor GC, a special Opaque object is placed into the mutation table to ensure the whole vector is scanned for stack objects during the next minor GC.

Previously this was not done so objects from the "old" stack were still in memory and any changes to them were trashing random portions of the stack!
2017-08-24 21:48:59 +00:00
Justin Ethier
f67b5fc1ea Faster remainder 2017-08-23 19:01:17 -04:00
Justin Ethier
49df11049a Speed up Cyc_remainder
Do not type check at the start of the function since there is already type checking in the function body.
2017-08-23 17:51:41 -04:00
Justin Ethier
d03258c83a Make read a little faster by streamlining main path
Move 2 comparisons underneath the (vector?) case, so in the normal case they can be skipped.
2017-08-23 17:26:20 +00:00
Justin Ethier
4b082da588 WIP 2017-08-23 16:57:29 +00:00
Justin Ethier
821e04eb34 Cache symbols instead of computing them each time 2017-08-23 16:56:39 +00:00