SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Mon 23 Oct 2023 09:30 - 10:00 at Room XIII - ST30 Day 2 Session 1 Chair(s): Alceste Scalas

We investigate the adaptation of session types to provide static behavioural guarantees for Elixir modules. We devise a type system, called ElixirST, which allows us to describe the behaviour of executing a public function in an Elixir module as a protocol of message interactions. The ElixirST type system also allows us to statically determine whether this function observes its endpoint specification; a corresponding tool automating the corresponding typechecking on Elixir source code has also been constructed. We also 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 interacting with an arbitrary module client that respects a compatible protocol. This operational semantics is then used to prove a form of session fidelity and progress for ElixirST.

Mon 23 Oct

Displayed time zone: Lisbon change

09:00 - 10:30
ST30 Day 2 Session 1ST30 at Room XIII
Chair(s): Alceste Scalas DTU
09:00
30m
Talk
Behavioural up/down casting for statically typed languages
ST30
Lorenzo Bacchiani , Mario Bravetti Università di Bologna, Marco Giunti Nova University of Lisbon, João Mota NOVA School of Science and Technology, António Ravara Nova University of Lisbon
09:30
30m
Talk
Session-Based Typechecking for Elixir Modules Using ElixirST
ST30
Adrian Francalanza University of Malta, Gerard Tabone University of Malta
10:00
30m
Talk
A Semantic Framework for Automatic Composition of Decentralised Industrial Control SchemesCancelled
ST30