Advertisement

A Linear Account of Session Types in the Pi Calculus

  • Marco Giunti
  • Vasco T. Vasconcelos
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6269)

Abstract

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.

Keywords

Type System Parallel Composition Typing Rule Linear Account Typing Context 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Caires, L., Pfenning, F.: Session types as intuitionistic linear propositions. In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 222–236. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  2. 2.
    Castagna, G., Dezani-Ciancaglini, M., Giachino, E., Padovani, L.: Foundations of session types. In: PPDP, pp. 219–230. ACM, New York (2009)CrossRefGoogle Scholar
  3. 3.
    Dezani-Ciancaglini, M., de’Liguoro, U.: Sessions and session types: An overview. In: Laneve, C. (ed.) WS-FM 2010. LNCS, vol. 6194, pp. 1–28. Springer, Heidelberg (2010)Google Scholar
  4. 4.
    Dezani-Ciancaglini, M., Drossopoulou, S., Mostrous, D., Yoshida, N.: Objects and session types. Information and Computation 207, 595–641 (2009)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Gay, S.J., Hole, M.J.: Subtyping for session types in the pi calculus. Acta Informatica 42(2/3), 191–225 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Honda, K., Vasconcelos, V.T., Kubo, M.: Language primitives and type discipline for structured communication-based programming. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, pp. 122–138. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  7. 7.
    Kobayashi, N., Pierce, B.C., Turner, D.N.: Linearity and the pi-calculus. ACM Transactions on Programming Languages and Systems 21, 914–947 (1999)CrossRefGoogle Scholar
  8. 8.
    Mazurak, K., Zhao, J., Zdancewic, S.: Lightweight linear types in system Fo. In: TLDI, pp. 77–88. ACM, New York (2010)CrossRefGoogle Scholar
  9. 9.
    Milner, R.: Functions as processes. Mathematical Structures in Computer Science 2(2), 119–141 (1992)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, part I/II. Journal of Information and Computation 100, 1–77 (1992)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Padovani, L.: Session types at the mirror. EPTCS 12, 71–86 (2009)CrossRefGoogle Scholar
  12. 12.
    Pierce, B.C.: Types and Programming Languages. MIT Press, Cambridge (2002)Google Scholar
  13. 13.
    Takeuchi, K., Honda, K., Kubo, M.: An Interaction-based Language and its Typing System. In: Halatsis, C., Philokyprou, G., Maritsas, D., Theodoridis, S. (eds.) PARLE 1994. LNCS, vol. 817, pp. 398–413. Springer, Heidelberg (1994)Google Scholar
  14. 14.
    Vasconcelos, V.T.: Fundamentals of Session Types. In: Bernardo, M., Padovani, L., Zavattaro, G. (eds.) SFM 2009. LNCS, vol. 5569, pp. 158–186. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  15. 15.
    Vasconcelos, V.T.: Lambda and pi calculi, CAM and SECD machines. Journal of Functional Programming 15(1), 101–127 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Walker, D.: Substructural Type Systems. In: Advanced Topics in Types and Programming Languages. MIT Press, Cambridge (2005)Google Scholar
  17. 17.
    Yoshida, N., Vasconcelos, V.T.: Language primitives and type discipline for structured communication-based programming revisited. In: SecReT 2007. ENTCS, vol. 171(4), pp. 73–93. Elsevier Science Publishers, Amsterdam (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Marco Giunti
    • 1
  • Vasco T. Vasconcelos
    • 2
  1. 1.Faculty of PlanningUniversity IUAV of Venice 
  2. 2.LaSIGE, Faculty of SciencesUniversity of Lisbon 

Personalised recommendations