Blogs (28) >>
ICFP 2017
Sun 3 - Sat 9 September 2017 Oxford, United Kingdom
Fri 8 Sep 2017 12:00 - 12:30 at L1 - Day 2, Session 3

We introduce a technique for programming with domain-specific linear languages using a monad that arises from the theory of linear/non-linear logic. In this work we interpret the linear/non-linear model as a simple, effectful linear language embedded inside an existing non-linear host language. We implement a modular framework for defining these linear EDSLs in Haskell, allowing both shallow and deep embeddings. To demonstrate the effectiveness of our framework and the linearity monad, we implement languages for file handles, mutable arrays, session types, and quantum computing.

Fri 8 Sep

Displayed time zone: Belfast change

12:00 - 12:30
Day 2, Session 3Haskell at L1
The Linearity Monad
Jennifer Paykin University of Pennsylvania, Steve Zdancewic University of Pennsylvania