Hacker News new | ask | show | jobs
by triska 2970 days ago
Nice writeup! I especially liked the subsection "Getting rid of global state".

Personally, I regard a programming language's ability to conveniently express sets of test cases an important indicator of its usefulness. Also for this reason, I find features such as Haskell's list comprehension and Prolog's built-in backtracking very attractive. Haskell also provides the QuickCheck framework for automated random testing. However, at least in my experience, systematic exhaustive testing is preferable, and provides stronger guarantees.