[Q] executing SOME compiledMethod (classless)

Lex Spoon lex at cc.gatech.edu
Tue Apr 4 21:27:33 UTC 2000


How about using blocks instead of CompiledMethod's?  Blocks can be
evaluated by sending #value.  You could make the first argument of the
block be the "receiver".

-Lex



"Peter Novak" <pno at whitestein.com> wrote:
> :>>> Bob ;>>>
> 
> Workspaces were just an example I used for explaining our problem. I should
> say that I want to create something like better morphs. We are working on
> prototypes in Squeak. And prototypes do not have ANY class. Morphs are also
> prototypes, but we don't like the idea of having separate class for each
> morph only because it has some scripts. What about having objects like
> morphs with their scripts connected between each other and really working?
> And now you come to the same problem, because you need to execute scripts
> for these prototypes (even we need it concurrently). Therefore we were
> looking for some clear solution, like using some primitive which will
> execute such a script. But it seems that we have to use some dirty trick
> (like that with class like UndefinedObject). The question is only to use the
> most clean from those dirty tricks ;>. John Maloney (I hope he's the one who
> implemented Morphs, I am sorry if I am wrong) solved this problem in Morphs
> with creating class for each morph. We are looking for some better solution.
> We want to have in our prototype based system as few bindings to Smalltalk
> class system as it will be possible. That's explanation of our problem.
> 
> We used workspaces for explaining our problem, because we wanted to explain
> the problem as simply as it was possible. It seems now, that we made not
> very good example of that what we want. Nevermind. It's okay now, I think.
> 
> Regards,
> 
> Peter.
> 
> 
> 
> -----Original Message-----
> From: Bob Arning <arning at charm.net>
> To: squeak at cs.uiuc.edu <squeak at cs.uiuc.edu>
> Date: 31. marec 2000 16:52
> Subject: Re: [Q] executing SOME compiledMethod (classless)
> 
> 
> >On Fri, 31 Mar 2000 16:22:42 +0200 "Peter Novak" <pno at whitestein.com>
> wrote:
> >>But imagine concurrent Workspaces where SOMEONE (doesn't matter now who -
> >>maybe people working in distributed environment) want to evaluate his own
> >>expression in his own workspace. Now You have a problem, because you are
> not
> >>able to say whose #DoIt will be executed at the moment.
> >
> >Peter,
> >
> >I suspect that this is far from the only problem you will encounter with
> multiple users sharing one image like that. Too much stuff is not thread
> safe. One option for the doIt problem (and you did touch on it) would be for
> each user to have a private class in which context doIts are evaluated (i.e.
> evaluate the code in PeterNovaksPrivateClass or BobArningsPrivateClass
> rather than in UndefinedObject). But, as I said, this may be the least of
> your problems.
> >
> >Cheers,
> >Bob





More information about the Squeak-dev mailing list