Session type

In type theory, session types are used to ensure correctness in concurrent programs. They guarantee that messages sent and received between concurrent programs are in the expected order and of the expected type.[1][2] Session type systems have been adapted for both channel and actor systems.[3]

Session types are used to ensure desirable properties in concurrent and distributed systems, i.e. absence of communication errors or deadlocks, and protocol conformance.[4]

  1. ^ Hüttel, Hans; Lanese, Ivan; Vasconcelos, Vasco T.; Caires, Luís; Carbone, Marco; Deniélou, Pierre-Malo; Mostrous, Dimitris; Padovani, Luca; Ravara, António; Tuosto, Emilio; Vieira, Hugo Torres; Zavattaro, Gianluigi (5 April 2016). "Foundations of Session Types and Behavioural Contracts". ACM Computing Surveys. 49 (1): 3:1–3:36. doi:10.1145/2873052. hdl:2381/38761. ISSN 0360-0300. S2CID 3580137.
  2. ^ Ancona, Davide (2016). Behavioral types in programming languages. Hanover, Massachusetts: Now Publishers. ISBN 978-1-68083-135-1. OCLC 1053840486.
  3. ^ Fowler, Simon; Lindley, Sam; Wadler, Philip (10 May 2017). "Mixing Metaphors: Actors as Channels and Channels as Actors (Extended Version)". arXiv:1611.06276 [cs.PL].
  4. ^ Scalas, Alceste; Yoshida, Nobuko (June 2018). "Multiparty session types, beyond duality". Journal of Logical and Algebraic Methods in Programming. 97: 55–84. doi:10.1016/j.jlamp.2018.01.001. hdl:10044/1/56777. S2CID 48360420.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne