completed 08_higher_order_functions
completed 09_runtime_polymorphism