Text this: Functional program testing and analysis