The reason for the fork is simple (though the implementation is not):
Morphic is single threaded, while Stef wanted to allow multiple
independent programs written in straight Smalltalk for the purpose of
his book.
And he wanted to present things like loops and make it relatively
student-proof.
So the approach that he took was to fork each script and arrange for the
UI to be updated from time to time as the individual scripts are running.
I figured it was something like this. I probably could've worked it out
had I dug in but I'm more focussed on teaching at the moment. (And I think
it's good for the problem to be known. I thought I read somewhere that
Stef's not reading the lists regularly, though, so perhaps I should e-mail
it directly.)
|