ETAPS 2019
Sat 6 - Thu 11 April 2019 Prague, Czech Republic
Mon 8 Apr 2019 14:30 - 15:00 at SUN II - Language Design Chair(s): Atsushi Igarashi

Software frequently converts data from one representation to another and vice versa. Naively specifying both conversion directions separately is error prone and introduces conceptual duplication. Instead, bidirectional programming techniques allow programs to be written which can be interpreted in both directions. However, these techniques often employ programming idioms that are alien to non-experts, via restricted, specialised combinator libraries. Instead, we introduce a framework for composing bidirectional programs monadically, enabling bidirectional programming with familiar abstractions in functional languages such as Haskell. We demonstrate the generality of our approach applied to parsers/printers, lenses, and generators/predicates. We show how to leverage compositionality and equational reasoning for the verification of round-tripping properties for such monadic bidirectional programs.

Mon 8 Apr
Times are displayed in time zone: (GMT+02:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

esop-2019-papers
14:00 - 16:00: ESOP 2019 - Language Design at SUN II
Chair(s): Atsushi IgarashiKyoto University, Japan
esop-2019-papers14:00 - 14:30
Talk
Paul DownenUniversity of Oregon, USA, Zachary Sullivan, Zena M. AriolaUniversity of Oregon, USA, Simon Peyton JonesMicrosoft, UK
Link to publication
esop-2019-papers14:30 - 15:00
Talk
Li-yao XiaUniversity of Pennsylvania, Dominic OrchardUniversity of Kent, UK, Meng WangUniversity of Bristol, UK
Link to publication
esop-2019-papers15:00 - 15:30
Talk
Link to publication
esop-2019-papers15:30 - 16:00
Talk
Kathleen FisherTufts University, Ferdinand VeselySwansea University
Link to publication