>> How do you get from "lack of compositionality" to "forfeit all other 
>> features"?
> 
> Lack of polymorphism, not composition.

I'm sorry, I'm just still confused about why you claim we have no polymorphism. 
I mean, we simply do have polymorphism. I think I understand why you are saying 
that polymorphic functions are less general in a language with multiary 
functions, but it doesn't mean we have *no* polymorphism.

There has been work on making polymorphism more expressive in languages with 
multiple arity functions:

    http://www.ccs.neu.edu/racket/pubs/esop09-sthf.pdf

And I think C++0x has some similar functionality. Maybe we'll end up exploring 
some of that. But at the end of the day, the worst case scenario here is that 
we lose some expressiveness and some things require more code duplication. 
That's a trade-off we will continue exploring, but we are willing to take some 
hits in expressiveness.

I think it's worth cutting to the chase and recognizing that we are not aiming 
for perfection. We're looking for a good trade-off between many competing 
constraints. That requires taste, and it requires compromise. Reasonable people 
can disagree about some of the individual decisions we make, but I don't agree 
that this one constitutes an insurmountable failure.

Dave

_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to