Alex Shinn
c5179f2271
Hopefully the last fd gc issue: also preserve for newly opening FILE* ports
...
if the corresponding fd still exists in the cache.
2014-06-11 23:19:00 +09:00
Alex Shinn
26716b1a2b
If we lookup a fileno that was cached but closed we need to reopen it.
2014-06-03 08:50:46 +09:00
Alex Shinn
152e66fbd6
Using a hash for the fileno table.
2014-06-01 12:20:18 +09:00
Alex Shinn
676b39d82a
Moving ephemerals into the core. Using them as a weak table to store filenos,
...
and enforcing the invariant that there is only one fileno object with a given
number at a time.
2014-05-31 14:20:00 +09:00
Alex Shinn
22e2a08563
Fixing custom ports built without utf8 support.
2014-05-08 06:47:33 -04:00
Alex Shinn
ea6e44f7d0
Distinguishing general read errors from incomplete input read errors.
...
Using these to allow multi-line input in edit-line.
2014-05-05 21:05:02 +09:00
Alex Shinn
ce24f67224
Making #! a line comment only if followed by whitespace or /,
...
otherwise we report a bad symbol for anything other than (no-)fold-case.
2014-05-05 14:24:52 +09:00
Alex Shinn
76a4cfa952
Fixing 4 byte utf8 read-char. Fixing resized strings in custom ports.
2014-04-26 13:39:26 +09:00
Alex Shinn
985deba95d
Fixing string-ref on 4-byte utf8 chars.
2014-04-26 12:40:31 +09:00
Alex Shinn
d945e744e1
Adding binary custom ports.
2014-03-16 20:12:12 +09:00
Alex Shinn
7727c4c45d
Taking a frozen copy of the initial env when we setup the meta env.
...
This is so that you can import into the interaction env without affecting
the (chibi) module.
2014-03-15 18:49:47 +09:00
Alex Shinn
8b5eb68238
File descriptors maintain a reference count of ports open on them
...
They can be close()d explicitly with close-file-descriptor, and
will close() on gc, but only explicitly closing the last port on
them will close the fileno. Notably needed for network sockets
where we open separate input and output ports on the same socket.
2014-02-20 22:32:50 +09:00