Skip to content
0:00 / 0:00

#sessiontypes#actors#lineartypes

Session Types for Me and You and Everyone We Know! - Zeeshan Lakhani

Maitria Alex Harms

150 subscribers • 3 videos on Hallway

YouTube
  • Recommended by 2 people: 1 on Lobsters and 1 in engineering communities.
  • A classic. People kept recommending it from 2016 to 2024.

Advanced. Deep dive for people who know the field.

1.3K views10 years ago2 recommendations

Programming languagesDistributed systemsConcurrency and parallelismLanguage design and type systemsComputation and complexity

Zeeshan Lakhani explains session types as a formalism to model distributed communicating processes and provide runtime safety.

Concurrent and distributed systems are unwieldy, and many of the patterns we program them with are informally characterized. How can we provide safety mechanisms at runtime and structure inter-process communication? One approach is session types, a formalism to model distributed communicating processes, describing protocols as type abstractions. This talk will cover the basics of what session types are and how they provide a safety net for asynchronous interaction across our increasingly complex platforms and networks. The flow of this talk will start with the motivation for the need to formalize communication patterns across actors/channels/processes. Then, I’ll define what session types are and briefly describe their ongoing history. Finally, I’ll describe a couple specific approaches, geared around functional dynamic languages as a form of runtime rejection, for which session types can be applied.

Why it's here

2 people recommend this

What people say. Recommended as an introduction to session types and their relation to linear types and state machines.

unbalancedparentheseson Lobsters • Recommends

Session Types for Me and You and Everyone We Know!

u/mttdin r/ProgrammingLanguages • Recommends

On “The hidden superpowers of linear types: how linear types control the future and prevent bugs”

…://theses.gla.ac.uk/83946/3/2023VoineaPhD.pdf, but I haven't had the chance to read it. Somewhat related (because it's inspired by the session types, but ultimately uses dependently typed Idris): - State Machines All The Way Down: An Architecture for Dependently Typed Applications - https://www.idris-lang.org/drafts/sms.pdf - ICFP 2017 talk: link to this video - Implementing State-aware Systems in Idris: The ST Tutorial: https://docs.idris-lang.org/en/latest/st/ - Dependent Effects: https://docs.idris-lang.org/en/latest/effects/depeff.html > A weird question, which you might be able to answer: in the talk, I mentioned that linear types enable three things: > - Enforcing a decision is eventu…