09 - runtime polymorphism
10 - lazy sequences