Past Meetup

Meetup #2 - QuickCheck by Naren Sundaravaradan

This Meetup is past

33 people went

Details

Naren will be talking about the QuickCheck paper from John Hughes: http://www.cs.tufts.edu/~nr/cs257/archive/john-hughes/quick.pdf

slides and code:

http://nanonaren.wordpress.com/2014/10/11/quickcheck/

More details:

Many of you have mentioned about this clashing with a talk at FuConf on property-based testing but I suggest we go through with this because I not only plan to cover QuickCheck but also motivate the topic with a little generality with respect to functional programming (to cater to those with a background mainly in imperative languages). Here is an outline of things I will cover

Each of these below will be illustrated with plenty of code examples

- Why are tests needed? This is not as obvious as it seems when viewed from the point-of-view of the Curry-Howard isomorphism (this will also serve as a hook for a future talk someone will inevitably want to do on type systems)

- How Haskell and other functional and type-safe languages can reduce testing needs

- What types can tell you about code functionality

- Types can get you far but not totally... so testing begins. Starting with the familiar method of unit testing

- An alternative mode of testing: invariance testing. Introducing QuickCheck. Include other motivations for invariance testing (from the model-checking world... successfully used in hardware and driver testing)

- Work through the paper

- Real-world uses of QuickCheck in Haskell packages (vector, lens, etc)

- Integration with unit tests and cabal (if people are interested)

- and ... pointing to further reading

Let me know what you guys think.

Thanks,

Naren