up to 08_higher_order_functions.clj