Skip to main content
School of Electronic Engineering and Computer Science

Session types for safe distributed programming

Application deadline: 1st June 2024

Distributed systems and Internet applications are fundamental to modern computing and society.  However, the development of safe, practical and efficient languages and techniques for distributed programming remains an open area of computer science research.

Session types and behavioural types are promising and active directions in this area.  Analogously to the notion of data types in programming languages, the idea is that communication protocols can be captured by a notion of interaction types, and distributed programs can be formally verified for protocol compliance by type systems approaches.

The key themes of this PhD project will be to investigate:

  • Specification of real-world communication protocols using session types.
  • Verification of session type protocols in practical programming languages and frameworks (e.g., Go, Rust, Java, Scala).

There are many options for directions to pursue in this project.  The project may build on prior research by the supervision team on topics such as session types for embedded systems and Internet-of-Things [1], failure handling and fault-tolerance [2,5], refinement types for interactions [3,6], or protocols involving parameterised behaviours [4].  There are also many opportunities for new directions.  The project may focus on theoretical or practical aspects, or a combination thereof.

For more information, please contact Raymond Hu (r.hu@qmul.ac.uk).

 

Supervisor

Dr Raymond Hu - r.hu@qmul.ac.uk
http://eecs.qmul.ac.uk/people/profiles/huraymond.html
Google Scholar: https://scholar.google.co.uk/citations?user=b08Zz1kAAAAJ&hl=en

 

[1] https://doi.org/10.1145/3622854
[2] https://doi.org/10.1145/3485501
[3] https://doi.org/10.1145/3428216
[4] https://doi.org/10.1145/3290342
[5] https://doi.org/10.1007/978-3-319-89884-1_28
[6] https://doi.org/10.1145/3178372.3179495

 

 

Back to top