Jonathan Aldrich, Joshua Sunshine, Darpan Saini & Zachary Sparks (2009):
Typestate-oriented programming.
In: Companion to OOPSLA'09.
ACM,
pp. 1015–1022,
doi:10.1145/1639950.1640073.
Nels E. Beckman, Duri Kim & Jonathan Aldrich (2011):
An Empirical Study of Object Protocols in the Wild.
In: Proceedings of ECOOP'11,
LNCS 6813.
Springer,
pp. 2–26,
doi:10.1007/978-3-642-22655-7_2.
Nick Benton, Luca Cardelli & Cédric Fournet (2004):
Modern concurrency abstractions for C#.
ACM Transactions on Programming Languages and Systems 26(5),
pp. 769–804,
doi:10.1145/1018203.1018205.
Jean-Philippe Bernardy, Mathieu Boespflug, Ryan R. Newton, Simon Peyton Jones & Arnaud Spiwack (2018):
Linear Haskell: practical linearity in a higher-order polymorphic language.
PACMPL 2(POPL),
pp. 5:1–5:29,
doi:10.1145/3158093.
Janusz A. Brzozowski (1964):
Derivatives of Regular Expressions.
Journal of ACM 11(4),
pp. 481–494,
doi:10.1145/321239.321249.
Silvia Crafa & Luca Padovani (2017):
The Chemical Approach to Typestate-Oriented Programming.
ACM Transactions on Programming Languages and Systems 39,
pp. 13:1–13:45,
doi:10.1145/3064849.
Fabrice Le Fessant & Luc Maranget (1998):
Compiling Join-Patterns.
Electr. Notes Theor. Comput. Sci. 16(3),
pp. 205–224,
doi:10.1016/S1571-0661(04)00143-4.
Cédric Fournet, Cosimo Laneve, Luc Maranget & Didier Rémy (2003):
Inheritance in the Join Calculus.
Journal of Logic and Algebraic Programming 57(1-2),
pp. 23–69,
doi:10.1016/S1567-8326(03)00040-7.
Cédric Fournet, Fabrice Le Fessant, Luc Maranget & Alan Schmitt (2003):
JoCaml: A Language for Concurrent Distributed and Mobile Programming.
In: Lecture Notes of the 4th International School on Advanced Functional Programming (AFP'03) LNCS 2638.
Springer,
pp. 129–158,
doi:10.1007/978-3-540-44833-4_5.
Ronald Garcia, Éric Tanter, Roger Wolff & Jonathan Aldrich (2014):
Foundations of Typestate-Oriented Programming.
ACM Transactions on Programming Languages and Systems 36(4),
pp. 12,
doi:10.1145/2629609.
James Gosling, Bill Joy, Guy L. Steele, Gilad Bracha & Alex Buckley (2014):
The Java Language Specification, Java SE 8 Edition,
1st edition.
Addison-Wesley Professional.
Philipp Haller & Tom Van Cutsem (2008):
Implementing Joins Using Extensible Pattern Matching.
In: Proceedings of COORDINATION'08 LNCS 5052.
Springer,
pp. 135–152,
doi:10.1007/978-3-540-68265-3_9.
G. Stewart Von Itzstein & Mark Jasiunas (2003):
On Implementing High Level Concurrency in Java.
In: Proceedings of ACSAC'03,
LNCS 2823.
Springer,
pp. 151–165,
doi:10.1007/978-3-540-39864-6_13.
Dimitrios Kouzapas, Ornela Dardha, Roly Perera & Simon J. Gay (2018):
Typechecking protocols with Mungo and StMungo: A session type toolchain for Java.
Science of Computer Programming 155,
pp. 52 – 75,
doi:10.1016/j.scico.2017.10.006.
Hubert Plociniczak & Susan Eisenbach (2010):
JErlang: Erlang with Joins.
In: Proceedings of COORDINATION'10 LNCS 6116.
Springer,
pp. 61–75,
doi:10.1007/978-3-642-13414-2_5.
Claudio V. Russo (2007):
The Joins Concurrency Library.
In: Proceedings of PADL'07 LNCS 4354.
Springer,
pp. 260–274,
doi:10.1007/978-3-540-69611-7_17.
Claudio V. Russo (2008):
Join Patterns for Visual Basic.
In: Proceedings of OOPSLA'08.
ACM,
pp. 53–72,
doi:10.1145/1449764.1449770.
Jeremy G. Siek & Walid Taha (2007):
Gradual Typing for Objects.
In: Proceedings of ECOOP'07,
LNCS 4609.
Springer,
pp. 2–27,
doi:10.1007/978-3-540-73589-2_2.
Martin Sulzmann, Edmund S. L. Lam & Peter Van Weert (2008):
Actors with Multi-headed Message Receive Patterns.
In: Proceedings of COORDINATION'08,
LNCS 5052.
Springer,
pp. 315–330,
doi:10.1007/978-3-540-68265-3_20.
Joshua Sunshine, Karl Naden, Sven Stork, Jonathan Aldrich & Éric Tanter (2011):
First-class state change in plaid.
In: Cristina Videira Lopes & Kathleen Fisher: Proceedings of OOPSLA'11.
ACM,
pp. 713–732,
doi:10.1145/2048066.2048122.
Joshua Sunshine, Sven Stork, Karl Naden & Jonathan Aldrich (2011):
Changing state in the plaid language.
In: Cristina Videira Lopes & Kathleen Fisher: Companion to OOPSLA'11.
ACM,
pp. 37–38,
doi:10.1145/2048147.2048166.
Aaron Joseph Turon & Claudio V. Russo (2011):
Scalable join patterns.
In: Proceedings of OOPSLA'93.
ACM,
pp. 575–594,
doi:10.1145/2048066.2048111.
Roger Wolff, Ronald Garcia, Éric Tanter & Jonathan Aldrich (2011):
Gradual Typestate.
In: Proceedings of ECOOP'11,
LNCS 6813.
Springer,
pp. 459–483,
doi:10.1007/978-3-642-22655-7_22.