We define a small class-based object-oriented language in which the availability of methods depends on an object’s abstract state: objects’ interfaces are dynamic. Each class has a session type which provides a global specification of the availability of methods in each state. A key feature is that the abstract state of an object may depend on the result of a method whose return type is an enumeration. Static typing guarantees that methods are only called when they are available. We present both a type system, in which the typing of a method specifies pre- and post-conditions for its object’s state, and a typechecking algorithm, which infers the pre- and post-conditions from the session type, and prove type safety results. Inheritance is in...
International audienceGuaranteeing that the parties of a network application respect a given protoco...
In this thesis I describe an extension to the Java language that supports type-safe dynamic code gen...
Previous work has proven typestates to be useful for modeling protocols in object-oriented languages...
We define a small class-based object-oriented language in which the availability of methods depends ...
Session types allow communication protocols to be specified type-theoretically so that protocol impl...
Abstract. Session types allow communication protocols to be specified type-theoretically so that pro...
International audienceSession types allow communication protocols to be specified type-theoretically...
AbstractIn current class-based Object-Oriented Programming Languages (OOPLs), object types include o...
Earlier work explored the introduction of session types into object oriented languages. Following th...
Statically typed programming languages allow earlier error checking, better enforcement of disciplin...
This paper is concerned with the relation between subtyping and subclassing and their influence on p...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
International audienceGuaranteeing that the parties of a network application respect a given protoco...
In this thesis I describe an extension to the Java language that supports type-safe dynamic code gen...
Previous work has proven typestates to be useful for modeling protocols in object-oriented languages...
We define a small class-based object-oriented language in which the availability of methods depends ...
Session types allow communication protocols to be specified type-theoretically so that protocol impl...
Abstract. Session types allow communication protocols to be specified type-theoretically so that pro...
International audienceSession types allow communication protocols to be specified type-theoretically...
AbstractIn current class-based Object-Oriented Programming Languages (OOPLs), object types include o...
Earlier work explored the introduction of session types into object oriented languages. Following th...
Statically typed programming languages allow earlier error checking, better enforcement of disciplin...
This paper is concerned with the relation between subtyping and subclassing and their influence on p...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
Typestate reflects how the legal operations on imperative objects can change at runtime as their int...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
International audienceGuaranteeing that the parties of a network application respect a given protoco...
In this thesis I describe an extension to the Java language that supports type-safe dynamic code gen...
Previous work has proven typestates to be useful for modeling protocols in object-oriented languages...