ICFP 2022
Sun 11 - Fri 16 September 2022 Ljubljana, Slovenia
Fri 16 Sep 2022 14:30 - 15:00 at Kosovel - Embedded DSLs Chair(s): James Koppel

Despite recent advances in communication and automation, regulations are still written in natural-language prose, subject to ambiguity, inconsistency, and incompleteness. How can we craft regulations with precision? Our solution is embodied in Eiger, a domain specific programming language embedded in Haskell. A domain expert pairs with a software engineer to write regulations in Eiger. The domain expert needs only to read and audit the code, but not write it. A first, limited user study suggests that this works well in practice because Eiger code looks like Excel formulas and SQL queries.

Eiger forms the kernel of a new strategy to deliver value to clients in our professional services business with increased automation and precision. The framework is executable: based on client data, we can use Eiger both to deduce how best to adapt to a new regulation and then maintain compliance. This paper reviews the design of Eiger and walks through its implementation. To preserve a straightforward surface syntax but with monadic semantics, we have leveraged advanced features, including GHC.Generics, the new OverloadedRecordDot extension, and a novel approach to performing class instance selection at run-time.

Fri 16 Sep

Displayed time zone: Belgrade, Bratislava, Budapest, Ljubljana, Prague change

14:00 - 15:30
Embedded DSLsHaskell at Kosovel
Chair(s): James Koppel Massachusetts Institute of Technology, USA
14:00
30m
Talk
Embedded Pattern Matching
Haskell
Trevor L. McDonell Utrecht University, Joshua D. Meredith IOHK, Gabriele Keller Utrecht University
14:30
30m
Demonstration
Eiger: Auditable, executable, flexible legal regulations
Haskell
Alexander Bernauer PricewaterhouseCoopers Switzerland, Richard A. Eisenberg Jane Street
15:00
30m
Day closing
PC Chair Report
Haskell
Nadia Polikarpova University of California at San Diego