Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Beauty in the Beast A Functional Semantics for the Awkward Squad

Summary: Beauty in the Beast
A Functional Semantics for the Awkward Squad
Wouter Swierstra Thorsten Altenkirch
University of Nottingham
{wss, txa}@cs.nott.ac.uk
It can be very difficult to debug impure code, let alone prove its cor-
rectness. To address these problems, we provide a functional spec-
ification of three central components of Peyton Jones's awkward
squad: teletype IO, mutable state, and concurrency. By construct-
ing an internal model of such concepts within our programming
language, we can test, debug, and reason about programs that per-
form IO as if they were pure. In particular, we demonstrate how our
specifications may be used in tandem with QuickCheck to automat-
ically test complex pointer algorithms and concurrent programs.
Categories and Subject Descriptors D.1.1 [Programming Tech-
niques]: Applicative (Functional) Programming; D.2.5 [Software
Engineering]: Testing and Debugging; F.3.1 [Theory of Computa-
tion]: Logics and the Meanings of Programs
General Terms Experimentation, Languages, Reliability, Theory,


Source: Altenkirch, Thorsten - School of Computer Science, University of Nottingham


Collections: Computer Technologies and Information Sciences