Blogs (28) >>
ICFP 2017
Sun 3 - Sat 9 September 2017 Oxford, United Kingdom
Mon 4 Sep 2017 10:30 - 10:52 at L1 - Art and Education Chair(s): Kathryn E. Gray

The Racket doctrine tells developers to narrow the
gap between the terminology of a problem domain and general
programming constructs by creating languages instead of just
plain programs. This pearl illustrates this point with the
creation of a relatively simple domain-specific language for
editing videos. To produce the video proceedings of a
conference, for example, video professionals traditionally
use "non-linear" GUI editors to manually edit each talk,
despite the repetitive nature of the process. As it turns
out, video editing naturally splits the work into a
declarative phase and an imperative rendering phase at the end. Hence
it is natural to create a functional-declarative language
for the first phase, which reduces a lot of manual labor.
This user-facing DSL utilizes a second, internal DSL to
implement the second phase, which is an interface to a
general, low-level C library. Finally, we inject type
checking into our language via another DSL that supports
programming in the language of type formalisms. In short,
the development of the video editing language cleanly
demonstrates how the Racket doctrine naturally leads to the
creation of language hierarchies, analogous to the
hierarchies of modules found in conventional functional

Mon 4 Sep

Displayed time zone: Belfast change

10:30 - 12:00
Art and EducationResearch Papers at L1
Chair(s): Kathryn E. Gray University of Cambridge
Super 8 Languages for Making Movies (Functional Pearl)
Research Papers
Leif Andersen Northeastern University, USA, Stephen Chang Northeastern University, USA, Matthias Felleisen Northeastern University, USA
Testing and Debugging Functional Reactive Programming
Research Papers
Ivan Perez University of Nottingham, UK, Henrik Nilsson University of Nottingham, UK
Lock-Step Simulation Is Child's Play (Experience Report)
Research Papers
Joachim Breitner University of Pennsylvania, Chris Smith Google, USA
Scaling up Functional Programming Education: Under the Hood of the OCaml MOOC
Research Papers
Benjamin Canou OCamlPro, n.n., Roberto Di Cosmo Inria, France / University of Paris Diderot, France, Grégoire Henry OCamlPro, n.n.