Re:is* specific class membership tests - Beginners Digest,
Vol 21, Issue 27
dick at cfcl.com
Fri Jan 25 23:05:38 UTC 2008
Do I understand correctly that the main reason to use isMorph rather
than is: Morph is that the former is faster. And is the reason to
prefer is: Morph is that it is more robust against required changes
in the code to accommodate other specific changes?
Wouldn't it be straightforward to use the is: * generic form and
generate an automatic revision to the more specific form while
providing a way to switch back whenever needed? Would such a system
solve the problem discussed?
Offhand, optimizations for efficiency like this seem to me to be
pretty easy to arrange and to undo with fairly simple "compilers".
There are also tools which make creating such compilers quite easy.
Here I think of a transformational attribute grammar (TAG) compiler
which can create a working prototype language XX compiler in perhaps
five times the volume of its Backus-Naur Form syntax.
Richard Karpinski, Nitpicker dick at cfcl.com
148 Sequoia Circle, Santa Rosa, CA 95401
Home +1 707-546-6760 Cell +1 707-228-9716
ps Put (or leave) "nitpicker" in the subject line to get past my spam
On 2008, Jan 25, , at 4:00, Michael Rueger <m.rueger at acm.org> wrote:
>> is: Class
>> ^(self class) inheritsFrom: Class
> isKindOf: already exists.
>> which would never have to be overridden? Obviously there are some is*
>> methods that server a larger purpose but isn't
>> more...polymorphic...to say
> is* is much much faster
> But, as I said, using is* is a sign of a design problem. If you use
> you are hardwiring the knowledge about certain classes into your
More information about the Beginners