Re: A summary of "Interfaces vs ZCA concepts"

Ethan Jucovy <[email protected]>
Newsgroups gmane.comp.web.zope.devel
Message-ID <[email protected]>
Hi,

On Thu, Dec 17, 2009 at 10:15 AM, Martijn Faassen
<[email protected]> wrote:
> * It'd be nice if __call__ came back with a LookupError instead of a
> TypeError, but how to get from A to B without breakage?

Maybe I've misunderstanding, but what's the advantage of making
IFoo(x) raise a LookupError instead of a TypeError?  I've tried to
follow the thread but I've been confused about this.  I do rely on
catching TypeErrors quite often in my code -- I had thought it was
intended as part of the API.

I like that treating it as typecasting instead of lookup blurs the
conceptual distinction between "adapting x to IFoo" and "asserting x
implements IFoo directly" -- when I actually want to know one or the
other I can use explicit adaptation or check providedBy.  In other
words I use IFoo(x) when I don't care whether IFoo(x) == x.

I suppose it's not a big deal but catching LookupErrors instead would
feel somewhat less semantic for the way I think about this.  But from
what I've caught of the larger thread it sounds like I'm in the
minority here.

-Ethan
_______________________________________________
Zope-Dev maillist  -  [email protected]
https://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope )
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.