📖
Session-ocaml: A Session-Based Library with Polarities and Lenses
Keigo Imai, Nobuko Yoshida, Shoji Yuen

Session-ocaml: A Session-Based Library with Polarities and Lenses

Science & Mathematics Published 2017 Verification Pending

Overview & Synopsis

We propose session-ocaml, a novel library for session-typed concurrent/distributed programming in OCaml. Our technique solely relies on parametric polymorphism, which can encode core session type structures with strong static guarantees. Our key ideas are: (1) polarised session types, which give an alternative formulation of duality enabling OCaml to automatically infer an appropriate session type in a session with a reasonable notational overhead; and (2) a parameterised monad with a data structure called ‘slots’ manipulated with lenses, which can statically enforce session linearity and delegations. We show applications of session-ocaml including a travel agency usecase and an SMTP protocol.

Indexed from repository: HAL Open Science (hal.science)
Loading document from verified source...
Keyboard Shortcuts: ← / → for pages • + / - for zoom • 0 to fit width Powered by Mozilla PDF.js v3.11

Document Information

Document Title Session-ocaml: A Session-Based Library with Polarities and Lenses
Author / Organization Keigo Imai, Nobuko Yoshida, Shoji Yuen
Subject & Discipline Multidisciplinary Academic Open Research
Categories Science & Mathematics
Publication Year 2017
License / Rights Open Access / Creative Commons
Resource Verification Listed PDF (Verification Pending)
Original Host Website HAL Open Science (hal.science)
File Format application/pdf (Portable Document Format)
Language EN
Catalog ID DOC-99425
Original Source Link Visit Source Page on hal.science »