- extend the VM interrupts to distinguish between read and write events - add new ADD-PENDING-CHANNEL instruction to the VM - add WAIT-FOR-CHANNELS procedure to the run-time system - implement SELECT and SELECT! on top of that in newports.scm This runs some basic tests, but in general should be considered largely untested. Moreover, SELECT/SELECT! never detect any exceptional conditions---the returned vectors are always empty. This is because the VM doesn't really track those, and it's unclear whether it would be worth the effort. |
||
|---|---|---|
| .. | ||
| base.scm | ||
| bignum.scm | ||
| channel-io.scm | ||
| channel-port.scm | ||
| channel.scm | ||
| condition.scm | ||
| continuation.scm | ||
| current-port.scm | ||
| defenum.scm | ||
| env.scm | ||
| eval.scm | ||
| exception.scm | ||
| floatnum.scm | ||
| init.scm | ||
| innum.scm | ||
| interrupt.scm | ||
| jar-defrecord.scm | ||
| lize.scm | ||
| lock.scm | ||
| low.scm | ||
| method.scm | ||
| number.scm | ||
| numio.scm | ||
| population.scm | ||
| port.scm | ||
| ratnum.scm | ||
| read.scm | ||
| recnum.scm | ||
| record.scm | ||
| root-scheduler.scm | ||
| scheduler.scm | ||
| session.scm | ||
| sigevents.scm | ||
| signal.scm | ||
| sleep.scm | ||
| template.scm | ||
| thread-cell.scm | ||
| thread-env.scm | ||
| thread.scm | ||
| time.scm | ||
| util.scm | ||
| wind.scm | ||
| write.scm | ||
| xnum.scm | ||
| xprim.scm | ||