1d35626709
command levels (as there *are* no command levels for things like scsh -c): There's now a new asynchronous event, similar to SPAWN, called NARROW. It spawns off a new scheduler with just one thread (which runs the thunk provided as an argument to NARROW) and blocks the current one until the narrowed scheduler finishes. For this to work, two schedulers need to be in place: the root scheduler which performs the housekeeping, and another one inside that which is the one the program uses---otherwise it's the root scheduler that's blocked, and that means no housekeeping gets done. This is trivially the case for interactive mode, as the command-levels all have their own schedulers, but we also need to make sure scsh's entry point fires up its own initial scheduler. |
||
---|---|---|
.. | ||
assem.scm | ||
basic-command.scm | ||
build.scm | ||
command-level.scm | ||
command.scm | ||
debug.scm | ||
debuginfo.scm | ||
disasm.scm | ||
disclosers.scm | ||
dispcond.scm | ||
flatload.scm | ||
init-defpackage.scm | ||
inspect.scm | ||
jar-assem.scm | ||
list-interface.scm | ||
load-package.scm | ||
pacman.scm | ||
pedit.scm | ||
profile.scm | ||
read-command.scm | ||
shadow.scm | ||
space.scm | ||
start.scm | ||
traverse.scm | ||
version-info.scm |