Session Fidelity for ElixirST: A Session-Based Type System for Elixir Modules
Abstract
This paper builds on prior work investigating the adaptation of session types to provide behavioural information about Elixir modules. A type system called ElixirST has been constructed to statically determine whether functions in an Elixir module observe their endpoint specifications, expressed as session types; a corresponding tool automating this typechecking has also been constructed. In this paper we formally validate this type system. An LTS-based operational semantics for the language fragment supported by the type system is developed, modelling its runtime behaviour when invoked by the module client. This operational semantics is then used to prove session fidelity for ElixirST.
- Publication:
-
arXiv e-prints
- Pub Date:
- August 2022
- DOI:
- 10.48550/arXiv.2208.04631
- arXiv:
- arXiv:2208.04631
- Bibcode:
- 2022arXiv220804631T
- Keywords:
-
- Computer Science - Programming Languages;
- Computer Science - Logic in Computer Science;
- Computer Science - Software Engineering
- E-Print:
- In Proceedings ICE 2022, arXiv:2208.04086