Tue 17 Jan 2023 11:00 - 11:45 at Studio 2 - Session 2 Chair(s): Michael Greenberg

We live in a world of connected services where geographically separate servers and clients exchange messages following sophisticated protocols. How do we ensure that implementations of servers and clients abide by those protocols? Session types provide one possible answer.A session type describes a bidirectional protocol with branching and looping. At the same time it guides the structure of server and client implementations for the protocol. Starting from first principles, this talk introduces the ideas of session types in the context of concurrent functional programming. We continue with a glimpse at two recent advances: polymorphic context-free session types as implemented in FreeST2 and dependent session types. Both advances increase expressivity; the first emphasizes modularity and supersedes a restriction of traditional systems, while the second enables more flexible and precise descriptions of protocols. The talk will be driven mainly by examples, but we also point out advantages, limitations, and challenges.

Slides (thiemann.pdf)383KiB

Tue 17 Jan

Displayed time zone: Eastern Time (US & Canada) change

11:00 - 12:30
Session 2PLMW @ POPL at Studio 2
Chair(s): Michael Greenberg Stevens Institute of Technology
Session Types Meet Polymorphism and Dependent Types
Peter Thiemann University of Freiburg, Germany
Media Attached File Attached
Career Trajectories in PL
Richard A. Eisenberg Jane Street, Anitha Gollamudi University of Massachusetts Lowell, Ryan Kavanagh McGill University, Joseph Tassarotti NYU, M: Michael Greenberg Stevens Institute of Technology