2006-12-13 11:06:21 -05:00
|
|
|
* Guardians:
|
2006-12-21 02:56:07 -05:00
|
|
|
CHECK - Implement guardians.
|
2006-12-21 03:14:12 -05:00
|
|
|
CHECK - clean up after file ports are dead by flushing/closing the
|
|
|
|
underlying file handle.
|
2006-12-24 01:25:01 -05:00
|
|
|
- Flush and close output-port on exit.
|
2006-12-13 11:06:21 -05:00
|
|
|
|
|
|
|
* Interrupts:
|
|
|
|
- pcb should have an engine-counter field that's decremented on
|
|
|
|
every procedure call.
|
|
|
|
- an engine-expired procedure must be called when the counter goes
|
|
|
|
negative. It should capture the current continuation and
|
|
|
|
reschedule the process.
|
|
|
|
- figure out what to do when a process gets interrupted while
|
|
|
|
reading from a file.
|
|
|
|
- Implement [CTRL-C] keyboard interruption with the ability to
|
|
|
|
resume the computation, reset to the repl, or terminate the
|
|
|
|
program (at least for now).
|
|
|
|
|
|
|
|
* FFI:
|
|
|
|
- provide a general mechanism for calling foreign procedures
|
|
|
|
without having to extend the VM.
|
|
|
|
(foreign-call void: FOO int32: x char*: y ptr: z)
|
|
|
|
- may dump the bignum stuff in the VM and move it to scheme.
|
|
|
|
|