Write a Blog >>
SLE 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
co-located with SPLASH 2019
Tue 22 Oct 2019 16:20 - 16:50 at Templars - Sessions 8: Types, ACID and Governance Chair(s): Vadim Zaytsev

Functional programming languages are well-suited for developing compilers, and compilers for functional languages are often themselves written in a functional language. Functional abstractions, such as monads, allow abstracting away some of the repetitive structure of a compiler, removing boilerplate code and making extensions simpler. Even so, functional languages are rarely used to implement compilers for languages of other paradigms.

This paper reports on the experience of a four-year long project where we developed a compiler for a concurrent, object-oriented language using the functional language Haskell. The focus of the paper is the implementation of the type checker, but the design works well in static analysis tools, such as tracking uniqueness of variables to ensure data-race freedom. The paper starts from a simple type checker to which we add more complex features, such as type state, with minimal changes to the overall initial design.

Tue 22 Oct (GMT+03:00) Beirut change

16:00 - 17:30: SLE 2019 - Sessions 8: Types, ACID and Governance at Templars
Chair(s): Vadim ZaytsevRaincode Labs, Belgium
sle-2019-papers16:00 - 16:20
sle-2019-papers16:20 - 16:50
Elias CastegrenKTH Royal Institute of Technology, Kiko Fernandez-ReyesUppsala University
DOI Pre-print
sle-2019-papers16:50 - 17:10
André PacakJGU Mainz, Sebastian ErdwegJGU Mainz
sle-2019-papers17:10 - 17:40
Friedrich SteimannFernuni Hagen, Nils KurowskyFernuni Hagen