smp: Clobber fluid-let and the (runtime state-space) package.
authorMatt Birkholz <puck@birchwood-abbey.net>
Wed, 5 Nov 2014 20:27:11 +0000 (13:27 -0700)
committerMatt Birkholz <puck@birchwood-abbey.net>
Fri, 19 Dec 2014 17:57:51 +0000 (10:57 -0700)
commitfca7e9c65c944dcc2873d0acebaadf974fc24834
tree07cd11b5d1bc83b80a5aa92b8ccd40e9eb4020ab
parentbd3470bc3861092921d8c66083d5c4ac74b0501b
smp: Clobber fluid-let and the (runtime state-space) package.

UNimplement fluid-let using dynamic-wind as a backward compatibility
kludge.  Subsystems still using fluid-let, e.g. LIAR, must not be run
in multiple threads simultaneously.  Fluid-let no longer provides
thread-local storage.

Replace the previously fluid-assigned bindings state-space:local and
(runtime dynamic)bindings with thread slots dynamic-point and
dynamic-environment.  Split the initialization of (runtime thread)
into "low" and "high" procedures.  The "low" procedure is applied
early in the bootstrap to create the initial thread, whose dynamic
state is needed later.  Lose the error handling in wait-for-io; it
runs when there is no current thread, thus no way to bind-condition-
handler.

Replace the uniprocessor-only Hanson/Lamping state-spaces with
Scheme48's multiprocessing-friendly dynamic-points in a new package
(runtime wind).
12 files changed:
doc/ref-manual/misc-datatypes.texi
doc/ref-manual/overview.texi
doc/ref-manual/special-forms.texi
doc/user-manual/user.texinfo
src/runtime/conpar.scm
src/runtime/dynamic.scm
src/runtime/global.scm
src/runtime/make.scm
src/runtime/mit-macros.scm
src/runtime/runtime.pkg
src/runtime/thread.scm
src/runtime/wind.scm