Show simple item record

dc.contributor.authorFowler, Simon
dc.contributor.authorLindley, Sam
dc.contributor.authorMorris, J. Garrett
dc.contributor.authorDecova, Sara
dc.date.accessioned2018-12-14T18:05:32Z
dc.date.available2018-12-14T18:05:32Z
dc.date.issued2019
dc.identifier.citationSimon Fowler, Sam Lindley, J. Garrett Morris, and Sára Decova. 2019. Exceptional Asynchronous Session Types: Session Types without Tiers. Proc. ACM Program. Lang. 3, POPL, Article 28 (January 2019), 29 pages. https://doi.org/10.1145/3290341en_US
dc.identifier.urihttp://hdl.handle.net/1808/27512
dc.description.abstractSession types statically guarantee that communication complies with a protocol. However, most accounts of session typing do not account for failure, which means they are of limited use in real applicationsÐespecially distributed applicationsÐwhere failure is pervasive. We present the first formal integration of asynchronous session types with exception handling in a functional programming language. We define a core calculus which satisfies preservation and progress properties, is deadlock free, confluent, and terminating. We provide the first implementation of session types with exception handling for a fully-fledged functional programming language, by extending the Links web programming language; our implementation draws on existing work on effect handlers. We illustrate our approach through a running example of two-factor authentication, and a larger example of a session-based chat application where communication occurs over session-typed channels and disconnections are handled gracefully.en_US
dc.publisherAssociation for Computing Machineryen_US
dc.rightsThis work is licensed under a Creative Commons Attribution 4.0 International License. © 2019 Copyright held by the owner/author(s).en_US
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/en_US
dc.subjectSession typesen_US
dc.subjectAsynchronyen_US
dc.subjectExceptionsen_US
dc.subjectWeb programmingen_US
dc.titleExceptional Asynchronous Session Types: Session Types without Tiersen_US
dc.typeArticleen_US
kusw.kuauthorMorris, J. Garrett
kusw.kuauthorDecova, Sara
kusw.kudepartmentElectrical Engineering and Computer Scienceen_US
dc.identifier.doi10.1145/3290341en_US
kusw.oaversionScholarly/refereed, publisher versionen_US
kusw.oapolicyThis item meets KU Open Access policy criteria.en_US
dc.rights.accessrightsopenAccessen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record

This work is licensed under a Creative Commons Attribution 4.0 International License. © 2019 Copyright held by the owner/author(s).
Except where otherwise noted, this item's license is described as: This work is licensed under a Creative Commons Attribution 4.0 International License. © 2019 Copyright held by the owner/author(s).