Write a Blog >>
ICFP 2019
Sun 18 - Fri 23 August 2019 Berlin, Germany
Sun 18 Aug 2019 15:20 - 15:40 at Aurora Borealis - Generic Programming and Synthesis Chair(s): Edwin Brady

Since the introduction of QuickCheck, property based testing has proven to be effective for the discovery of bugs. However, defining the properties to test is only part of the story: it is equally important to generate suitable test data. In particular, requiring random test data to satisfy arbitrary preconditions can lead to skewed distributions: for example, naively generating random sorted lists will rarely yield long lists. As a result, developers need to design custom generators carefully—but these generators can become arbitrarily complex. When testing a compiler, for example, it can be quite challenging to define a good generator that is guaranteed to produce well-formed programs. In this brief abstract we propose to address this problem using the observation that well-formed inputs can often be described by (indexed) inductive datatypes. By defining a generic procedure for enumerating indexed datatypes, we can obtain a way of safely generating precise test data.

Sun 18 Aug

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

15:20 - 16:40
Generic Programming and SynthesisTyDe at Aurora Borealis
Chair(s): Edwin Brady University of St. Andrews, UK
15:20
20m
Talk
Generic Enumerators
TyDe
Cas van der Rest Utrecht University, Wouter Swierstra Utrecht University, Netherlands, Manuel Chakravarty Tweag I/O & IOHK
Pre-print
15:40
20m
Talk
Generic Level Polymorphic N-ary Functions
TyDe
Guillaume Allais University of Strathclyde
Link to publication
16:00
20m
Talk
Augmenting Type Signatures for Program Synthesis
TyDe
Bruce Collie University of Edinburgh, Michael F. P. O'Boyle University of Edinburgh
Pre-print
16:20
20m
Talk
Constraint-based Type-directed Program Synthesis
TyDe
Peter-Michael Osera Grinnell College
Link to publication