Skip to main content
Home

Main navigation

  • Home
  • Series
  • People
  • Depts & Colleges

Main navigation

  • Home
  • Series
  • People
  • Depts & Colleges

Effect-Driven QuickChecking of Compilers

Series
International Conference on Functional Programming 2017
Video Embed
Jan Midtgaard, gives the fourth presentation in the fourth panel, Effects, in the ICFP 2017 conference. Co-written by Mathias Nygaard Justesen, Patrick Kasting, Flemming Nielson, Hanne Riis Nielson, DTU, Denmark.
How does one test a language implementation with QuickCheck (aka. property-based testing)? One approach is to generate programs following the grammar of the language. But in a statically-typed language such as OCaml too many of these candidate programs will be rejected as ill-typed by the type checker. As a refinement Pałka et al. propose to generate programs in a goal-directed, bottom-up reading up of the typing relation. We have written such a generator. However many of the generated programs has output that depend on the evaluation order, which is commonly under-specified in languages such as OCaml, Scheme, C, C++, etc. In this paper we develop a type and effect system for conservatively detecting evaluation-order dependence and propose its goal-directed reading as a generator of programs that are independent of evaluation order. We illustrate the approach by generating programs to test OCaml's two compiler backends against each other and report on a number of bugs we have found doing so.

More in this series

View Series
International Conference on Functional Programming 2017

Imperative Functional Programs that Explain their Work

Jan Stolarek, University of Edinburgh, UK, gives the third presentation in the fourth panel, Effects, in the ICFP 2017 conference. Co-written by Wilmer Ricciotti, Roly Perera and James Cheney, and University of Edinburgh, UK.
Previous
International Conference on Functional Programming 2017

Assuring AI

John Launchbury, Chief Scientist of Galois Inc, gives the second keynote of the ICFP conference.
Next
Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England & Wales; http://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
Jan Midtgaard
Keywords
computing
programming
technology
Department: Department of Computer Science
Date Added: 18/12/2017
Duration: 00:18:19

Subscribe

Apple Podcast Video Video RSS Feed

Download

Download Video

Footer

  • About
  • Accessibility
  • Contribute
  • Copyright
  • Contact
  • Privacy
'Oxford Podcasts' Twitter Account @oxfordpodcasts | MediaPub Publishing Portal for Oxford Podcast Contributors | Upcoming Talks in Oxford | © 2011-2022 The University of Oxford