Type-theoretic foundations for concurrent object-oriented programing

Abstract
A number of attempts have been made to obtain type systems for object-oriented programming. The view that lies common is “object-oriented programming = &lgr;-calculus + record.” Based on an analogous view “concurrent object-oriented programming = concurrent calculus + record,” we develop a static type system for concurrent object-oriented programming. We choose our own Higher-Order ACL as a basic concurrent calculus, and show that a concurrent object-oriented language can be easily encoded in the Higher-Order ACL extended with record operations. Since Higher-Order ACL has a strong type system with a polymorphic type inference mechanism, programs of the concurrent object-oriented language can be automatically type-checked by the encoding in Higher-Order ACL. Our approach can give clear accounts for complex mechanisms such as inheritance and method overriding within a simple framework.