A partially deadlock-free typed process calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
Featherweight Java: a minimal core calculus for Java and GJ
ACM Transactions on Programming Languages and Systems (TOPLAS)
PI-Calculus: A Theory of Mobile Processes
PI-Calculus: A Theory of Mobile Processes
Language Primitives and Type Discipline for Structured Communication-Based Programming
ESOP '98 Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems
An Interaction-based Language and its Typing System
PARLE '94 Proceedings of the 6th International PARLE Conference on Parallel Architectures and Languages Europe
Subtyping for session types in the pi calculus
Acta Informatica
Electronic Notes in Theoretical Computer Science (ENTCS)
Multiparty asynchronous session types
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Two session typing systems for higher-order mobile processes
TLCA'07 Proceedings of the 8th international conference on Typed lambda calculi and applications
Sessions and session types: an overview
WS-FM'09 Proceedings of the 6th international conference on Web services and formal methods
Session types as intuitionistic linear propositions
CONCUR'10 Proceedings of the 21st international conference on Concurrency theory
Full abstraction in a subtyped pi-calculus with linear types
CONCUR'11 Proceedings of the 22nd international conference on Concurrency theory
A new type system for deadlock-free processes
CONCUR'06 Proceedings of the 17th international conference on Concurrency Theory
Linear logical relations for session-based concurrency
ESOP'12 Proceedings of the 21st European conference on Programming Languages and Systems
Functions as session-typed processes
FOSSACS'12 Proceedings of the 15th international conference on Foundations of Software Science and Computational Structures
Information and Computation
Behavioral polymorphism and parametricity in session-based communication
ESOP'13 Proceedings of the 22nd European conference on Programming Languages and Systems
Hi-index | 0.00 |
Session types are a formalism to model structured communication-based programming. A session type describes communication by specifying the type and direction of data exchanged between two parties. When session types and session primitives are added to the syntax of standard π-calculus types and terms, they give rise to additional separate syntactic categories. As a consequence, when new type features are added, there is duplication of efforts in the theory: the proofs of properties must be checked both on ordinary types and on session types. We show that session types are encodable in ordinary π types, relying on linear and variant types. Besides being an expressivity result, the encoding (i) removes the above redundancies in the syntax, and (ii) the properties of session types are derived as straightforward corollaries, exploiting the corresponding properties of ordinary π types. The robustness of the encoding is tested on a few extensions of session types, including subtyping, polymorphism and higher-order communications.