Creator
QuickCheck
John Hughes is co-founder and CEO of Quviq AB, and the creator of QuickCheck. He was also involved in the design of Haskell being co-chair of the committee defining the language. He currently divides his time between his academic involvement as Chair of Chalmers University, Gothenburg, and QuviQ, the company promoting QuickCheck.
John 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.
Talks I've Given
-
Testing smart contracts with QuickCheck
Featuring John Hughes
I will talk about some recent work on a random testing framework for smart contracts on the Cardano blockchain--which supports the world's largest "proof of stake" cryptocurrency. In contrast to the Ethereum blockchain, Cardano contracts are written in Haskell, but of course, they...
haskell -
Why Functional Programming Matters
Featuring John Hughes
27 years ago I published “Why Functional Programming Matters”, a manifesto for FP–but the subject is much older than that! In this talk I’ll take a deep dive into its history, highlighting some of the classic papers of the subject, personal favourites, and some of my own...
practice -
QuickChecking Riak
Featuring John Hughes
In this talk John Hugh's shows us how QuickCheck helped us to model Riak’s behaviour, improving understanding and revealing the occasional bug.
functional-programming riak nosql low-latency concurrency erlang fpx -
Quick Check for Erlang
Featuring John Hughes
Testing is a major part of all software development—yet no matter how much effort is spent on it, some errors always seem to slip through. Cases which no‐one thought to test crash systems late in development or out in the field, revealing errors which cost time and money to analyze,...
erlang quickcheck -
2
Quick Check Tutorial: Using QuickCheck to Test Erlang Programs
Featuring John Hughes and Thomas Arts
In this tutorial, John Hughes and Thomas Arts will use examples to show how developers write QuickCheck specifications—which are actually Erlang programs using the QuickCheck API—and use them to test code written in Erlang or other programming languages. We will show how QuickCheck’s shrinking...
erlang quickcheck