AbstractIn current class-based Object-Oriented Programming Languages (OOPLs), object types include only static features. How to add object dynamic behaviors modeled by Harel's statecharts into object types is a challenging task. We propose adding states and state transitions, which are largely unstated in object type theory, into object type definitions and typing rules. We argue that dynamic behaviors of objects should be part of object type definitions. We propose our type theory, the τ-calculus, which refines Abadi and Cardelli's ζ-calculus, in modeling objects with their dynamic behaviors. In our proposed type theory, we also explain that a subtyping relation between object types should imply the inclusion of their dynamic behaviors. By...
The demands of developing modern, highly dynamic applications have led to an increasing interest in ...
To appear in the proceedings of OOPSLA 2015We study a novel approach to typestate-oriented programmi...
We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programm...
AbstractIn current class-based Object-Oriented Programming Languages (OOPLs), object types include o...
Static typing and subtyping are useful for the support of incremental refinement and reuse in object...
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 define a small class-based object-oriented language in which the availability of methods depends ...
We define a small class-based object-oriented language in which the availability of methods depends ...
Previous work has proven typestates to be useful for modeling protocols in object-oriented languages...
We show how type inference for object oriented programming languages with state can be performed wit...
We introduce state classes, a construct to program objects that can be safely concurrently accessed....
Previous work on type-theoretic foundations for object-oriented programming languages has mostly foc...
Abstract. Static and dynamic type systems have well-known strengths and weaknesses. In previous work...
The notion of abstract object type (AOT) tends to overlay the already classical concept of abstract ...
The demands of developing modern, highly dynamic applications have led to an increasing interest in ...
To appear in the proceedings of OOPSLA 2015We study a novel approach to typestate-oriented programmi...
We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programm...
AbstractIn current class-based Object-Oriented Programming Languages (OOPLs), object types include o...
Static typing and subtyping are useful for the support of incremental refinement and reuse in object...
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 define a small class-based object-oriented language in which the availability of methods depends ...
We define a small class-based object-oriented language in which the availability of methods depends ...
Previous work has proven typestates to be useful for modeling protocols in object-oriented languages...
We show how type inference for object oriented programming languages with state can be performed wit...
We introduce state classes, a construct to program objects that can be safely concurrently accessed....
Previous work on type-theoretic foundations for object-oriented programming languages has mostly foc...
Abstract. Static and dynamic type systems have well-known strengths and weaknesses. In previous work...
The notion of abstract object type (AOT) tends to overlay the already classical concept of abstract ...
The demands of developing modern, highly dynamic applications have led to an increasing interest in ...
To appear in the proceedings of OOPSLA 2015We study a novel approach to typestate-oriented programmi...
We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programm...