Write a Blog >>
ICFP 2018
Sun 23 - Sat 29 September 2018 St. Louis, Missouri, United States
Tue 25 Sep 2018 11:37 - 12:00 at Stifel Theatre - Compilation and Concurrency Chair(s): Heather Miller

Highly critical application domains, like medicine and aerospace, require the use of strict design, implementation and validation techniques. Functional languages have been used in these domains to develop synchronous dataflow programming languages for reactive systems. Causal stream functions and Functional Reactive Programming capture the essence of those languages in a way that is both elegant and robust.

To guarantee that critical systems can operate under high stress over long periods of time, these applications require clear specifications of possible faults and hazards, and how they are being handled. Modeling failure is straightforward in functional languages, and many Functional Reactive abstractions incorporate support for failure or termination. However, handling \emph{unknown types of faults}, and incorporating \emph{fault tolerance} into Functional Reactive Programming, requires a different construction and remains an open problem.

This work presents extensions to an existing functional reactive abstraction to facilitate tagging reactive transformations with hazard tags or confidence levels. We present a prototype framework to quantify the reliability of a reactive construction, by means of numeric factors or probability distributions, and demonstrate how to aid the design of fault-tolerant systems, by constraining the allowed reliability to required boundaries. By applying type-level programming, we show that it is possible to improve static analysis and have compile-time guarantees of key aspects of fault tolerance. Our approach is powerful enough to be used in systems with realistic complexity, and flexible enough to be used to guide their analysis and design, to test system properties, to verify fault tolerance properties, to perform runtime monitoring, to implement fault tolerance during execution and to address faults during runtime. We present implementations in Haskell and in Idris.

I like Game Programming, Multimedia and Functional Languages. I am 4th-year PhD student @ Nottingham.

My supervisors are Henrik Nilsson and Graham Hutton.

I am also the founder of Keera Studios(tm), a game programming company that uses Functional Languages to deliver games for Android, iOS and desktop, and apps for mobile platforms.

Tue 25 Sep

10:30 - 12:00: Research Papers - Compilation and Concurrency at Stifel Theatre
Chair(s): Heather MillerCarnegie Mellon University
icfp-2018-papers10:30 - 10:52
Stefan K. Muller, Umut AcarCarnegie Mellon University, Robert Harper
icfp-2018-papers10:52 - 11:15
Martin ElsmanUniversity of Copenhagen, Denmark, Troels HenriksenUniversity of Copenhagen, Denmark, Danil AnnenkovDepartment of Computer Science, University of Copenhagen, Cosmin OanceaUniversity of Copenhagen, Denmark
Link to publication DOI
icfp-2018-papers11:15 - 11:37
Atsushi OhoriTohoku University, Japan, Katsuhiro UenoTohoku University, Hisayuki MimaTohoku University
icfp-2018-papers11:37 - 12:00
Ivan PerezNational Institute of Aerospace, USA