We introduce a novel approach to typestate-oriented programming based on the chemical metaphor: state and operations on objects are molecules of messages, and state transformations are chemical reactions. This approach allows us to investigate typestate in an inherently concurrent setting, whereby objects can be accessed and modified concurrently by several processes, each potentially changing only part of their state. We introduce a simple behavioral type theory to express in a uniform way both the private and the public interfaces of objects; describe and enforce structured object protocols consisting of possibilities, prohibitions, and obligations; and control object sharing
Abstract: We present work in the creation of a programming paradigm based on the event protocols of ...
We describe a generative approach that enables concurrent typestate-oriented programming in Java and...
We develop a principled integration of shared mutable state into a proposition-as-types linear logic...
To appear in the proceedings of OOPSLA 2015We study a novel approach to typestate-oriented programmi...
Typestate-oriented programming is an extension of the OO paradigm in which objects are modeled not ...
Abstract. The chemical reaction metaphor describes computation in terms of a chemical solution in wh...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
AbstractIn current class-based Object-Oriented Programming Languages (OOPLs), object types include o...
AbstractThe chemical reaction metaphor describes computation in terms of a chemical solution in whic...
AbstractWe propose a process algebra, the Algebra of Behavioural Types, as a language for typing con...
Typestate oriented programming integrates notions of typestate directly into the semantics of an obj...
The chemical reaction metaphor describes computation in terms of a chemical solution in which molecu...
The chemical reaction metaphor describes computation in terms of a chemical solution in which molecu...
AbstractWe obtain a new formalism for concurrent object-oriented languages by extending Abadi and Ca...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
Abstract: We present work in the creation of a programming paradigm based on the event protocols of ...
We describe a generative approach that enables concurrent typestate-oriented programming in Java and...
We develop a principled integration of shared mutable state into a proposition-as-types linear logic...
To appear in the proceedings of OOPSLA 2015We study a novel approach to typestate-oriented programmi...
Typestate-oriented programming is an extension of the OO paradigm in which objects are modeled not ...
Abstract. The chemical reaction metaphor describes computation in terms of a chemical solution in wh...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
AbstractIn current class-based Object-Oriented Programming Languages (OOPLs), object types include o...
AbstractThe chemical reaction metaphor describes computation in terms of a chemical solution in whic...
AbstractWe propose a process algebra, the Algebra of Behavioural Types, as a language for typing con...
Typestate oriented programming integrates notions of typestate directly into the semantics of an obj...
The chemical reaction metaphor describes computation in terms of a chemical solution in which molecu...
The chemical reaction metaphor describes computation in terms of a chemical solution in which molecu...
AbstractWe obtain a new formalism for concurrent object-oriented languages by extending Abadi and Ca...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
Abstract: We present work in the creation of a programming paradigm based on the event protocols of ...
We describe a generative approach that enables concurrent typestate-oriented programming in Java and...
We develop a principled integration of shared mutable state into a proposition-as-types linear logic...