Cursus Raku / Obiecta, introitus et exitus, et exceptiones / Classes et obiecta / Protocollum metaobjectorum 🆕 / Exercises / Rhombus classium
Solutio: Rhombus classium
Ecce solutio possibilis huius exercitationis.
Codex
class A {
}
class B is A {
}
class C is A {
}
class D is B is C {
}
say D.^mro.map(*.^name);🦋 Inveni codicem fontem in archivo diamond-mro.raku.
Exitus
(D B C A Any Mu)Commentarii
Da duobus parentibus simul heredat —class D is B is Cunumquemque cum proprioisenumerat. Haec est hereditas multiplex, etA,B,C,Dadamantem formant: duae semitae aDsursum ad communem maioremA..^mroillum adamantem in unum ordinem quaerendi linearem complanat.Dprimum venit, deinde parentes eiusBetCeo ordine quo scripti sunt, deinde communisA, et deniqueAnyetMu.Quamquam et
BetCadAducunt, genusAsemel apparet, et solum post utrumque. Ea est ratio ordinis resolutionis methodorum: omne genus exacte semel visitatur, et parens numquam ante filiam venit quae ab eo heredat — itaque methodus inBdefinita semper ante eam invenitur quam inAsuperscriberet.