Tech Mesh London 2012
John Hughes, TweetCo-inventor of QuickCheck and Haskell
Biography: John Hughes
John Hughes has been a functional programming enthusiast for more than thirty years, at the Universities of Oxford, Glasgow, and since 1992 Chalmers University in Gothenburg, Sweden. He served on the Haskell design committee, co-chairing the committee for Haskell 98, and is the author of more than 75 papers, including "Why Functional Programming Matters", one of the classics of the area. With Koen Claessen, he created QuickCheck, the most popular testing tool among Haskell programmers, and in 2006 he founded Quviq to commercialise the technology using Erlang.
John's University Home Page
Presentation: TweetKeynote: Haskell: Practical as well as Cool
Time:
Tuesday 09:15 - 10:15
/
Location:
To be announced
You’ve probably heard about Haskell by now, but life is short, so why should you bother about yet another programming language? In this talk we’ll focus on three distinctive aspects of Haskell that you might make it worth the bother. First, purity: uncontrolled side effects are the bane of correctness, testing, and parallelism, and Haskell gets them under control. Second, types: going well beyond the sterile static/dynamic debate, Haskell is an amazing cauldron of new ideas in types, and we’ll tell you why that matters. Last, domain specific languages: we all need them and no language makes it easier to develop and morph a DSL than Haskell. We hope you’ll go away at least provoked and intrigued.
Presentation: TweetThe Properties of Riak
Riak is one of the new breed of no-SQL database management systems, which has begun to replace relational databases for some applications. Riak is a distributed key-value store, inspired by Amazon’s Dynamo, designed for applications where scalability, low latency and high availability are critical. Riak uses replication to provide fast access to data, even when multiple nodes or parts of the network fail. It supports concurrent access to the same data by multiple clients, even when the network is partitioned. All of this makes it very hard to test.
I will show how QuickCheck helped us to model Riak’s behaviour, improving understanding and revealing the occasional bug.
Talk objectives: To show how property-based
testing can be used to find subtle interactions that just aren't
practical to test with a hand-written test suite.
Target audience: Anyone interested in testing more with less work!