References

  1. C# documentation. https://docs.microsoft.com/dotnet/csharp/.
  2. Scribble. http://www.scribble.org/.
  3. David Castro, Raymond Hu, Sung-Shik Jongmans, Nicholas Ng & Nobuko Yoshida (2019): Distributed Programming Using Role-Parametric Session Types in Go: Statically-Typed Endpoint APIs for Dynamically-Instantiated Communication Structures. Proc. ACM Program. Lang. 3(POPL), doi:10.1145/3290342.
  4. Manuel M. T. Chakravarty, Gabriele Keller, Simon L. Peyton Jones & Simon Marlow (2005): Associated types with class. In: Jens Palsberg & Martín Abadi: Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2005, Long Beach, California, USA, January 12-14, 2005. ACM, pp. 1–13, doi:10.1145/1040305.1040306.
  5. Ezra Cooper, Sam Lindley, Philip Wadler & Jeremy Yallop (2006): Links: Web Programming Without Tiers. In: Formal Methods for Components and Objects, 5th International Symposium, FMCO 2006, Amsterdam, The Netherlands, November 7-10, 2006, Revised Lectures, pp. 266–296, doi:10.1007/978-3-540-74792-5_12.
  6. Ornela Dardha, Elena Giachino & Davide Sangiorgi (2017): Session types revisited. Inf. Comput. 256, pp. 253–286, doi:10.1016/j.ic.2017.06.002.
  7. Simon Fowler, Sam Lindley, J. Garrett Morris & Sára Decova (2019): Exceptional Asynchronous Session Types: Session Types Without Tiers. Proc. ACM Program. Lang. 3(POPL), pp. 28:1–28:29, doi:10.1145/3290341.
  8. Kohei Honda, Vasco T. Vasconcelos & Makoto Kubo (1998): Language primitives and type discipline for structured communication-based programming. In: Chris Hankin: Programming Languages and Systems. Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 122–138, doi:10.1007/BFb0053567.
  9. Raymond Hu (2017): Distributed Programming Using Java APIs Generated from Session Types. In [Chapter 13]BETTYTOOLBOOK..
  10. Raymond Hu & Nobuko Yoshida (2016): Hybrid Session Verification through Endpoint API Generation. In: 19th International Conference on Fundamental Approaches to Software Engineering, LNCS 9633. Springer, pp. 401–418, doi:10.1007/978-3-662-49665-7_24.
  11. Raymond Hu & Nobuko Yoshida (2017): Explicit Connection Actions in Multiparty Session Types. In: Marieke Huisman & Julia Rubin: Fundamental Approaches to Software Engineering. Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 116–133, doi:10.1007/978-3-662-54494-5_7.
  12. Raymond Hu, Nobuko Yoshida & Kohei Honda (2008): Session-Based Distributed Programming in Java. In: ECOOP 2008 - Object-Oriented Programming, 22nd European Conference, Paphos, Cyprus, July 7-11, 2008, Proceedings, pp. 516–541, doi:10.1007/978-3-540-70592-5_22.
  13. Keigo Imai, Nobuko Yoshida & Shoji Yuen (2018): Session-ocaml: a Session-based Library with Polarities and Lenses. Sci. Comput. Program. 172, pp. 135–159, doi:10.1016/j.scico.2018.08.005.
  14. Keigo Imai, Shoji Yuen & Kiyoshi Agusa (2010): Session Type Inference in Haskell. In: Proceedings Third Workshop on Programming Language Approaches to Concurrency and communication-cEntric Software, PLACES 2010, Paphos, Cyprus, 21st March 2010., pp. 74–91, doi:10.4204/EPTCS.69.6.
  15. Thomas Bracht Laumann Jespersen, Philip Munksgaard & Ken Friis Larsen (2015): Session Types for Rust. In: WGP 2015: Proceedings of the 11th ACM SIGPLAN Workshop on Generic Programming. ACM, pp. 13–22, doi:10.1145/2808098.2808100.
  16. Wen Kokke (2019): Rusty Variation: Deadlock-free Sessions with Failure in Rust. In: Massimo Bartoletti, Ludovic Henrio, Anastasia Mavridou & Alceste Scalas: Proceedings 12th Interaction and Concurrency Experience, ICE 2019, Copenhagen, Denmark, 20-21 June 2019, EPTCS 304, pp. 48–60, doi:10.4204/EPTCS.304.4.
  17. Dimitrios Kouzapas, Ornela Dardha, Roly Perera & Simon J. Gay (2016): Typechecking protocols with Mungo and StMungo. In: Proceedings of the 18th International Symposium on Principles and Practice of Declarative Programming, Edinburgh, United Kingdom, September 5-7, 2016, pp. 146–159, doi:10.1145/2967973.2968595.
  18. Sam Lindley & J. Garrett Morris (2015): A Semantics for Propositions as Sessions. In: Programming Languages and Systems - 24th European Symposium on Programming, ESOP 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015. Proceedings, pp. 560–584, doi:10.1007/978-3-662-46669-8_23.
  19. Sam Lindley & J. Garrett Morris (2016): Embedding Session Types in Haskell. In: Haskell 2016: Proceedings of the 9th International Symposium on Haskell. ACM, pp. 133–145, doi:10.1145/2976002.2976018.
  20. J. McCarthy (1979): An Interesting LISP Function. Lisp Bull. 3, pp. 6–8, doi:10.1145/1411829.1411833.
  21. Massimo Merro & Davide Sangiorgi (2004): On asynchrony in name-passing calculi. Mathematical Structures in Computer Science 14(5), pp. 715–767, doi:10.1017/S0960129504004323.
  22. Rumyana Neykova, Raymond Hu, Nobuko Yoshida & Fahd Abdeljallal (2018): A session type provider: compile-time API generation of distributed protocols with refinements in F#. In: Proceedings of the 27th International Conference on Compiler Construction, CC 2018, February 24-25, 2018, Vienna, Austria. ACM, pp. 128–138, doi:10.1145/3178372.3179495.
  23. Dominic Orchard & Nobuko Yoshida (2016): Effects as sessions, sessions as effects. In: POPL 2016: 43th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM, pp. 568–581, doi:10.1145/2837614.2837634.
  24. Luca Padovani (2016): A Simple Library Implementation of Binary Sessions. Journal of Functional Programming 27, pp. e4, doi:10.1017/S0956796816000289.
  25. Riccardo Pucella & Jesse A. Tov (2008): Haskell Session Types with (Almost) No Class. In: Proceedings of the First ACM SIGPLAN Symposium on Haskell, Haskell '08. ACM, New York, NY, USA, pp. 25–36, doi:10.1145/1411286.1411290.
  26. Chieri Saito & Atsushi Igarashi (2008): The Essence of Lightweight Family Polymorphism. Journal of Object Technology 7(5), pp. 67–99, doi:10.5381/jot.2008.7.5.a3.
  27. Alceste Scalas, Ornela Dardha, Raymond Hu & Nobuko Yoshida (2017): A Linear Decomposition of Multiparty Sessions for Safe Distributed Programming. In: ECOOP, doi:10.4230/LIPIcs.ECOOP.2017.24.
  28. Alceste Scalas & Nobuko Yoshida (2016): Lightweight Session Programming in Scala. In: ECOOP 2016: 30th European Conference on Object-Oriented Programming, LIPIcs 56. Dagstuhl, pp. 21:1–21:28, doi:10.4230/LIPIcs.ECOOP.2016.21.
  29. António Ravara Simon Gay (2017): Behavioural Types: from Theory to Tools. River Publisher, doi:10.13052/rp-9788793519817.
  30. Philip Wadler (2014): Propositions as sessions. J. Funct. Program. 24(2-3), pp. 384–418, doi:10.1017/S095679681400001X.

Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org