Show simple item record

Files in this item


Item metadata

dc.contributor.authorde Muijnck-Hughes, Jan
dc.contributor.authorBrady, Edwin Charles
dc.contributor.authorVanderbauwhede, Wim
dc.contributor.editorMartins, Francisco
dc.contributor.editorOrchard, Dominic
dc.identifier.citationde Muijnck-Hughes , J , Brady , E C & Vanderbauwhede , W 2019 , Value-dependent session design in a dependently typed language . in F Martins & D Orchard (eds) , Proceedings Programming Language Approaches to Concurrency- and Communication-cEntric Software, Prague, Czech Republic, 7th April 2019 . Electronic Proceedings in Theoretical Computer Science , vol. 291 , Open Publishing Association , pp. 47-59 , Programming Language Approaches to Concurrency- & Communication-cEntric Software (PLACES 2019) , Prague , Czech Republic , 7/04/19 .
dc.identifier.otherPURE: 258172592
dc.identifier.otherPURE UUID: 861c51b5-2c2d-42ab-949d-90737c39a4f8
dc.identifier.otherORCID: /0000-0002-9734-367X/work/58054931
dc.identifier.otherScopus: 85065976635
dc.identifier.otherWOS: 000465439200006
dc.description.abstractSession Types offer a typing discipline that allows protocol specifications to be used during type-checking, ensuring that implementations adhere to a given specification. When looking to realise global session types in a dependently typed language care must be taken that values introduced in the description are used by roles that know about the value. We present Sessions, a Resource Dependent Embedded Domain Specific Language (EDSL) for describing global session descriptions in the dependently typed language Idris. As we construct session descriptions the values parameterising the EDSLs’ type keeps track of roles and messages they have encountered. We can use this knowledge to ensure that message values are only used by those who know the value. Sessions supports protocol descriptions that are computable, composable, higher-order, and value-dependent. We demonstrate Sessions expressiveness by describing the TCP Handshake, a multi-modal server providing echo and basic arithmetic operations, and a Higher-Order protocol that supports an authentication interaction step.
dc.publisherOpen Publishing Association
dc.relation.ispartofProceedings Programming Language Approaches to Concurrency- and Communication-cEntric Software, Prague, Czech Republic, 7th April 2019en
dc.relation.ispartofseriesElectronic Proceedings in Theoretical Computer Scienceen
dc.rights© Jan de Muijnck-Hughes et al. This work is licensed under the Creative Commons Attribution License.en
dc.subjectQA75 Electronic computers. Computer scienceen
dc.subjectT Technology (General)en
dc.titleValue-dependent session design in a dependently typed languageen
dc.typeConference itemen
dc.description.versionPublisher PDFen
dc.contributor.institutionUniversity of St Andrews.School of Computer Scienceen

This item appears in the following Collection(s)

Show simple item record