Cursus Raku / Obiecta, introitus et exitus, et exceptiones / Classes et obiecta / Partes / Exercises / Robotum saltans

Solutio: Robotum saltans

Ecce solutio possibilis huius exercitationis.

Codex

role Dancing {
    method dance {
        'spinning around';
    }
}

class Robot {
    method speak {
        'beep';
    }
}

my $plain   = Robot.new;
my $dancing = Robot.new but Dancing;

say $plain.speak;
say $dancing.speak;
say $dancing.dance;

🦋 Inveni codicem fontem in archivo dancing-robot.raku.

Exitus

beep
beep
spinning around

Commentarii

  1. Dissimilis exemplis superioribus, Dancing methodum exsistentem non substituit — methodum omnino novam dance adfert de qua Robot nihil scit.

  2. Robot.new but Dancing partem in unum obiectum tempore exsecutionis miscet, itaque $dancing et speak (ex classe) et dance (ex parte) potest. Simplex $plain solum speak umquam didicit.

  3. Facultas additicia ad illud unum obiectum pertinet, non ad classem Robot. Vocare $plain.dance error esset, quia $plain partem numquam accepit.

Robotum saltans   |   Obiecta introspicere