On Thu, Oct 03, 2002 at 04:54:13PM -0500, Garrett Goebel wrote:
> Garrett Goebel:
> > Michael G Schwern:
> > > But I don't want my subclasses to be constrained by that.  
> > > It's just an implementation detail that I only wish to
> > > enforce upon ATV and not it's children.
> 
> implementation details don't belong in interfaces

It's encoded as a private condition, so it's not part of the interface.

I see class invariants and conditions as just powerful, well organized
assertions, so naturally I'm going to want to use them for more than just
specifying an interface contract.  In this case, I'm using them to ensure
that internal details of my implementation are kept in order.  It would be
silly to have to define a whole new syntax for that purpose, so I just make
them private.


-- 

Michael G. Schwern   <[EMAIL PROTECTED]>    http://www.pobox.com/~schwern/
Perl Quality Assurance      <[EMAIL PROTECTED]>         Kwalitee Is Job One
The eye opening delightful morning taste of expired cheese bits in sour milk!

Reply via email to