Filters








5 Hits in 2.9 sec

Session-ocaml: A Session-Based Library with Polarities and Lenses [chapter]

Keigo Imai, Nobuko Yoshida, Shoji Yuen
2017 Lecture Notes in Computer Science  
Programming with session-ocaml In this section, we overview session types and the session-typed programming with session-ocaml, and summarise communication primitives in the library.  ...  We propose session-ocaml, a novel library for session-typed concurrent/distributed programming in OCaml.  ...  The third author thanks the JSPS bilateral research with NFSC for fruitful discussion.  ... 
doi:10.1007/978-3-319-59746-1_6 fatcat:tquwsdb5wzgzdfwajcrnxzdcpi

Ferrite: A Judgmental Embedding of Session Types in Rust [article]

Ruofei Chen, Stephanie Balzer, Bernardo Toninho
2022 arXiv   pre-print
In contrast to existing session type libraries and embeddings for mainstream languages, Ferrite not only supports linear session types but also shared session types.  ...  Ferrite adopts a propositions as types approach and encodes typing derivations as Rust functions, with the proof of successful type-checking manifesting as a Rust program.  ...  We further combine the optics abstraction with de Bruijn levels and implement lenses and prisms using type level natural numbers.  ... 
arXiv:2009.13619v6 fatcat:3s7kdopxe5cl3ok2omuafdcxza

Ferrite: A Judgmental Embedding of Session Types in Rust [article]

Ruo Fei Chen, Stephanie Balzer, Bernardo Toninho
2022 arXiv   pre-print
A limitation of existing session type libraries in mainstream languages is their restriction to linear session types, precluding application scenarios that demand sharing and thus aliasing of channel references  ...  Typing rules are then encoded as functions over judgments, with a valid typing derivation manifesting as a well-typed Rust program.  ...  We further combine the optics abstraction with de Bruijn levels and implement lenses and prisms using type level natural numbers.  ... 
arXiv:2205.06921v2 fatcat:seiar7xo6fgkfgwai4vnaocglm

Multiparty Session Programming with Global Protocol Combinators [article]

Keigo Imai, Rumyana Neykova, Nobuko Yoshida, Shoji Yuen
2020 arXiv   pre-print
To overcome these limitations, we propose a library for programming with global combinators -- a set of functions for writing and verifying multiparty protocols in OCaml.  ...  We show our library can interoperate with existing libraries and services, implementing DNS (Domain Name Service) protocol and the OAuth (Open Authentication) protocol.  ...  JP17K19969 and JP17K12662, Short-term visiting  ... 
arXiv:2005.06333v2 fatcat:zqtsntdqjrgbnfmg262g6zattu

Theory and Applications of Behavioural Types (Dagstuhl Seminar 17051)

Simon Gay, Vasco T. Vasconcelos, Philip Wadler, Nobuko Yoshida, Marc Herbstritt
2017 Dagstuhl Reports  
Perhaps the most well-known form of behavioural types is session types, which are type-theoretic specifications of communication protocols.  ...  This report documents the programme and the outcomes of Dagstuhl Seminar 17051 "Theory and Applications of Behavioural Types".  ...  Session-ocaml: A Session-based Library with Polarities and Lenses This presentation focuses on the composition of the behavior of distributed componentsmodeled using Actors-from reusable pieces.  ... 
doi:10.4230/dagrep.7.1.158 dblp:journals/dagstuhl-reports/GayVWY17 fatcat:nl4mfyez5bchrdomocb6qsfpkq