[Some nits before the merge Don Stewart **20080507160459] { hunk ./en/ch12-testing.xml 17 -precise systems. The rich, expressive type-system allows for complicated -invariants to be enforced statically -- making it impossible to produce -code violating chosen constraints. Meanwhile, purity and polymorphism ensure -code is built to be modular, refactorable, and testable. This is the kind of -code that just doesn't go wrong. +precise systems. The expressive type-system allows for complicated invariants +to be enforced statically -- making it impossible to write code violating +chosen constraints. Meanwhile, purity and polymorphism encourage code that +is modular, refactorable, and testable. This is the kind of code that just +doesn't go wrong. hunk ./en/ch12-testing.xml 28 -testing with QuickCheck. Property-based testing encourages a high level +testing, with QuickCheck. Property-based testing encourages a high level hunk ./en/ch12-testing.xml 59 -And the function we want to test -- a custom sort routine (the classic -Haskell sort implementation): +And the function we want to test -- a custom sort routine: hunk ./en/ch12-testing.xml 65 -This is the classic "quicksort" implementation: a study in functional +This is the classic Haskell sort implementation: a study in functional hunk ./en/ch12-testing.xml 200 - - - Testing JSON - - - - Code coverage: improving test quality - }