Re: threads & dynamic environment & continuations
Matthias Felleisen 12 May 2000 02:46 UTC
Olin,
It is well understood in the SML/NJ community (which has been grabbing
continuations, dealing with dynamically bound exceptions, and hacking
threads for > 10 years), that the dynamic environment is *part of the
continuation*. So throwing to a continuation discards the current
dynamic environment, and installs the one packaged up with the
continuation to which we are throwing. CALL/CC grabs the dynamic
environment at the point of call and packages it up when it builds the
reified continuation.
This tops it off. Do you know how call/cc-continuations made it into Smell
of New Jersey? Thru Bruce Duba, who with Dan and me had studied call/cc and
interactions with the dynamic environment for four or five years in
Indiana. If he had written his d'n dissertation, everyone would know where
this stuff comes from. Instead he put callcc into this monstrosity of a
so-called language, and gave these guys the funnest part of Scheme to play
with. And you know what? Unless one of us reviews their papers, they don't
even acknowledge what we knew before they were born-again call/ccers. They
have added nothing to our knowledge baout call/cc. I even gave the type to
Griffin. Mentioning them here is .... hm, insulting. :)
;; ---
I also agree with Marc on values. Throw them out. Now. They screwed up
spidey so bad, it's not funny.
-- Matthias, the MLer eater