Begin forwarded message:
Date: December 5, 2009 9:55:14 PM GMT+01:00
Subject: Re: why OOP needs tails recursion article
Hi Steph,
can you forward my response to the Pharo list? I guess I do need to join the Pharo list :/
Eliot (from under an avalanche of email)
On Sat, Dec 5, 2009 at 12:32 PM, Eliot Miranda
<[hidden email]> wrote:
I want to return to the implementation and optimization implications of this later. But Steele's post refers to William Cook's excellent paper
On understanding data abstraction, revisited. Onward! Essays, 2009 ACM OOPSLA. SIGPLAN Notices 44, 10 (Oct. 2009), 557-572. There's a freely available draft version. The quote I want to emphasise is
The extensibility of objects does not depend upon inheritance, but rather is an inherent property of object interfaces.
The paper proves this point eloquently and concisely. The implication is that isKindOf: is <shout>BROKEN</shout>. In the absence of something better isSomeInterface to query whether an object implements some interface SomeInterface is acceptable. isKindOf: (and the horror I found the other day isKindOf:orKindOf: (you see why it exists and where it leads?)) is not and should be expunged.
My weekend rant.
best,
Eliot
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project