1. Polymorphism
class Example { method be-nice () { 'be nice' } } class Bill-and-Ted is Example { method be-nice () { 'be excellent to each other' } }
role Salaried { has $.salary; } role Employee { has $.title; } class Manager does Employee does Salaried {}
class Price { has $.cost; } class Product { has Price $.inner handles( 'price' => 'cost' ); }
1. Polymorphism
2. Composition 3. Delegation Any call to the `.price()` method on `Product` will delegate to the `.cost()` method on the inner object.