un système de "traits", qui correspondent en fait assez exactement aux type classes de Haskell, pour transporter les implémentation. L'idée est qu'on définit des interfaces/traits
Euh, tu peux préciser?
Si j'en reviens à la base(C++) de l'héritage multiple, le problème principal est l'héritage en diamant quand les super-classes ont des variables, donc la règle de codage de C++ est de ne pas utiliser de variable dans les classes utilisée pour l'héritage multiple, en Java ils ont "résolu" le problème en faisant des interfaces sans implémentation ce qui est bien pénible car à chaque fois qu'on implémente une interface on doit l'implémentation, donc retour en arrière depuis on implémente avec des tas de noms différent (trait, mixin, etc) la "régle de codage" de C++: une classe ne contenant que des fonctions.
[^] # Re: Rust
Posté par reno . En réponse à la dépêche De tout, de rien, des bookmarks, du bla bla #42. Évalué à 4.
Euh, tu peux préciser?
Si j'en reviens à la base(C++) de l'héritage multiple, le problème principal est l'héritage en diamant quand les super-classes ont des variables, donc la règle de codage de C++ est de ne pas utiliser de variable dans les classes utilisée pour l'héritage multiple, en Java ils ont "résolu" le problème en faisant des interfaces sans implémentation ce qui est bien pénible car à chaque fois qu'on implémente une interface on doit l'implémentation, donc retour en arrière depuis on implémente avec des tas de noms différent (trait, mixin, etc) la "régle de codage" de C++: une classe ne contenant que des fonctions.
J'ai bon? Ou c'est autre chose?