33 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
* Fix pretty-print to handle shared/cyclic data.
 | 
						|
* Fix pretty-print to print records properly.
 | 
						|
 | 
						|
CHECK * Recognize calls to call-with-values where the second argument is a
 | 
						|
  case-lambda and handle them sensibly.
 | 
						|
 | 
						|
* Guardians:
 | 
						|
CHECK  - Implement guardians. 
 | 
						|
CHECK  - clean up after file ports are dead by flushing/closing the
 | 
						|
         underlying file handle.
 | 
						|
  - Flush and close output-port on exit.
 | 
						|
 | 
						|
* Interrupts:
 | 
						|
CHECK  - pcb should have an engine-counter field that's decremented on
 | 
						|
    every procedure call.
 | 
						|
CHECK  - a do-event procedure must be called when the counter goes
 | 
						|
    negative.  It should capture the current continuation and
 | 
						|
    reschedule the process.
 | 
						|
CHECK  - figure out what to do when a process gets interrupted while
 | 
						|
    reading from a file.
 | 
						|
CHECK  - 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.
 | 
						|
 | 
						|
CHECK * Read-invariant gensym.
 | 
						|
 |