Tuples, functional programming tools, exhaustive testing framework