William Morgan wrote:

>Thank you (and Adam Jenkins) for clarifying this.
>
>So the LSP doesn't say anything about constructors (and rightly so IMO).
>So we're back to where we started: subtypes of Array can have
>non-trivial constructors and #initialize can't be called automatically
>for them.
>
><summary follows>
>  
>
Good summary.

BTW, I started reading some of the LSP thread on the c2 wiki that 
somebody else linked to. Pretty interesting. It seems several of them 
want to draw a distinction between subclass and subtype -- they find 
that there are times they want to subclassing but not follow LSP. I 
think they're using a language that doesn't have mixins, Forwardable, 
etc. so subclassing is the only way for them to share code between 
classes. :)

>Ok, I'm about to spend the weekend with no electricity or running water
>thanks to you guys (just kidding!) so no more of this boring thread from
>me until Sunday. :)
>  
>
Good luck! I should probably quit posting on this thread, too, before 
people start killfiltering me...

Devin