Typing and Subtyping for an Object-Oriented Process Algebra
Abstract:
Oompa is an extension of the π-calculus which provides class-based object-orientation in the style of the CORBA object model. This technical report supplements the earlier presentation of Oompa [TBD00] by providing a sound type system with structural subtyping. The classes and interfaces of class-based languages typically give rise to highly inter-referential, and sometimes self-referential types. A key feature of our system is that these types are transformed into a bound recursive form independent of other definitions, and our subtyping algorithm guarantees termination upon types of this form. 1
Citations
| 802 | A Theory of Objects – Abadi, Cardelli - 1996 |
| 405 | A syntactic approach to type soundness – Wright, Felleisen - 1994 |
| 327 | Communicating and Mobile Systems: the π-Calculus – Milner - 1999 |
| 306 | Subtyping recursive types – Amadio, Cardelli - 1993 |
| 220 | Typing and subtyping for mobile processes – Pierce, Sangiorgi - 1996 |
| 183 | Simple type-theoretic foundations for object-oriented programming – Pierce, Turner - 1994 |
| 110 | B.C.: Comparing Object Encodings – Bruce, Cardelli, et al. - 1997 |
| 71 | Typed concurrent objects – Vasconcelos - 1994 |
| 10 | An interpretation of typed objects into typed π-calculus – Sangiorgi - 1998 |
| 2 | Oomotivated process algebra: A calculus for corba-like systems – Tyrrell, Butterfield, et al. - 2000 |

