Imperial College London

ProfessorNobukoYoshida

Faculty of EngineeringDepartment of Computing

Academic Visitor
 
 
 
//

Contact

 

+44 (0)20 7594 8240n.yoshida Website

 
 
//

Location

 

556Huxley BuildingSouth Kensington Campus

//

Summary

 

Publications

Citation

BibTex format

@article{Imai:2019:10.1016/j.scico.2018.08.005,
author = {Imai, K and Yoshida, N and Yuen, S},
doi = {10.1016/j.scico.2018.08.005},
journal = {Science of Computer Programming},
pages = {135--159},
title = {Session-ocaml: a session-based library with polarities and lenses},
url = {http://dx.doi.org/10.1016/j.scico.2018.08.005},
volume = {172},
year = {2019}
}

RIS format (EndNote, RefMan)

TY  - JOUR
AB - 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 including delegations. We introduce a notational extension to enhance the session linearity for integrating the session types into the functional programming style. We show applications of session-ocaml to a travel agency use case and an SMTP protocol implementation. Furthermore, we evaluate the performance of Image 1 on a number of benchmarks.
AU - Imai,K
AU - Yoshida,N
AU - Yuen,S
DO - 10.1016/j.scico.2018.08.005
EP - 159
PY - 2019///
SN - 0167-6423
SP - 135
TI - Session-ocaml: a session-based library with polarities and lenses
T2 - Science of Computer Programming
UR - http://dx.doi.org/10.1016/j.scico.2018.08.005
UR - http://hdl.handle.net/10044/1/63748
VL - 172
ER -