Functional programming tools
