On Sat, 2008-09-13 at 10:32 +0200, Lorens Kockum wrote:
> On Fri, Sep 12, 2008 at 03:49:01PM -0400, Jonathan S. Shapiro wrote:
> > We have no plans to do multiple inheritance in BitC.
> 
> Maybe interfaces, like in java?

No, for several reasons.

First, if you look harder at type classes, you will conclude that you
already have them. The only thing missing is method syntax, and that is
straightforward to add.

Second, this was never intended to be an OO language. OO is certainly
the fad of the day, but the IS-A relationship is frequently misused, and
it is rarely the abstraction that you actually want. This is reinforced
by the fact that most of the texts on OO programming actively encourage
bad uses of inheritance.

Finally, much of BitC's practical utility relies on the effectiveness of
the type inference mechanism. That, in turn, relies on principal typing.
If we push much further in the OO direction, we risk breaking the
ability to preserve principal typings, and I really don't want to do
that.


Overall, my response at this point is: before you look for a new
feature, see if there is a way to express what you want in the language
already. Surface syntax is easy to change. New semantics is not.


shap

_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to