Sciweavers

CONCUR
2004
Springer

Session Types for Functional Multithreading

13 years 10 months ago
Session Types for Functional Multithreading
We define a language whose type system, incorporating session types, allows complex protocols to be specified by types and verified by static typechecking. A session type, associated with a communication channel, specifies the state transitions of a protocol and also the data types of messages associated with transitions; thus typechecking can verify both correctness of individual messages and correctness of sequences of transitions. Previously session types have mainly been studied in the context of the π-calculus; instead, our formulation is based on a multi-threaded functional language with side-effecting input/output operations. Our typing judgements statically describe dynamic changes in the types of channels, our channel types statically track aliasing, and our function types not only specify argument and result types but also describe changes in channels. We formalize the syntax, semantics and typing system of our language, and prove subject reduction and runtime type saf...
Vasco Thudichum Vasconcelos, António Ravara
Added 01 Jul 2010
Updated 01 Jul 2010
Type Conference
Year 2004
Where CONCUR
Authors Vasco Thudichum Vasconcelos, António Ravara, Simon J. Gay
Comments (0)