functional programming playground