A calculus of mobile processes, I
Information and Computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Types and programming languages
Types and programming languages
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
Lambda and pi calculi, CAM and SECD machines
Journal of Functional Programming
Subtyping for session types in the pi calculus
Acta Informatica
Electronic Notes in Theoretical Computer Science (ENTCS)
Information and Computation
Formal Methods for Web Services
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
Lightweight linear types in system f°
Proceedings of the 5th ACM SIGPLAN workshop on Types in language design and implementation
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
Session types as intuitionistic linear propositions
CONCUR'10 Proceedings of the 21st international conference on Concurrency theory
Dependent session types via intuitionistic linear type theory
Proceedings of the 13th international ACM SIGPLAN symposium on Principles and practices of declarative programming
Linearity and recursion in a typed Lambda-calculus
Proceedings of the 13th international ACM SIGPLAN symposium on Principles and practices of declarative programming
Information and Computation
Hi-index | 0.00 |
We present a reconstruction of session types in a conventional pi calculus where types are qualified as linear or unrestricted. Linearly typed communication channels are guaranteed to occur in exactly one thread, possibly multiple times. We equip types with a constructor that denotes the two ends of a same communication channel. In order to assess the flexibility of the new type system, we provide three distinct encodings (from the linear lambda calculus, from the linear pi calculus, and from the pi calculus with polarized variables) into our system. For each language we present operational and typing correspondences, showing that our system effectively subsumes the linear pi calculus as well as foregoing works on session types.