論文

査読有り
2017年

Session-ocaml: A session-based library with polarities and lenses

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
  • Keigo Imai
  • ,
  • Nobuko Yoshida
  • ,
  • Shoji Yuen

10319
開始ページ
99
終了ページ
118
記述言語
英語
掲載種別
研究論文(国際会議プロシーディングス)
DOI
10.1007/978-3-319-59746-1_6
出版者・発行元
Springer Verlag

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.

リンク情報
DOI
https://doi.org/10.1007/978-3-319-59746-1_6
共同研究・競争的資金等の研究課題
メッセージの到達性を保証しない通信環境におけるセッション型付きプログラミング

エクスポート
BibTeX RIS