[ENH] RE: Does #class deserve to be a very-special shortcut bytecode anymore?

Justin Walsh jwalsh at bigpond.net.au
Sun Jan 6 02:33:01 UTC 2002


Is Rob Withers kidding? A licence for a word?
Who does he think he is Shakespear?

----- Original Message -----
From: "Rob Withers" <rwithers12 at mediaone.net>
To: <squeak-dev at lists.squeakfoundation.org>
Sent: Sunday, January 06, 2002 11:38 AM
Subject: Re: [ENH] RE: Does #class deserve to be a very-special shortcut
bytecode anymore?


> At 02:22 PM 1/5/2002, you wrote:
> >I don't think I 've ever come across a proxying scheme that really
> >worked completely; there's always some awkard balancing act to try to
> >cope with basic messages either refering to the proxy or the proxant (my
> >new word for the thing the proxy is proxying for. A license to use this
> >word can be obtained from my business agents, 'Dewey, Cheatham and Howe')
> >and what do you do to get to the 'other side'... Somebody somewhere must
> >have really got it right but I've never had the priviledge of working
> >with it.
>
> Tim,
>
> This certainly isn't the solution for a good proxy, but I am intrigued by
> it's usefulness as a filter on sending messages to an Oop.  I am thinking
> that this would be useful for Security, if I can only get the correct
Mixin
> behavior.  So, this defines a MessageRedirector class, which is a compact
> class.   When you enable redirection (a vm call) it registers the ccIndex
> and in lookupMethodInClass it checks whether receiver oop is a
> MessageRedirector.  If it is, it sends the well known message
> #redirectMessage: to the object in the first slot of the redirector.  It
> does this for all messages, especially now that we fixed the
> bytecodePrimClass/bytecodePrimEquivalent methods.
>
> The must have system methods are set using a very poor mixin pattern.  I
> have an auxilliary methodDictionary which compiles basemethodStrings in
the
> scope of the RedirectorContext class.  I also included TestCases.
>
> rob





More information about the Squeak-dev mailing list