BIB-VERSION:: CS-TR-v2.0 ID:: STAN//CS-TN-96-35 ENTRY:: June 10, 1996 ORGANIZATION:: Stanford University, Department of Computer Science TITLE:: A Calculus for Concurrent Objects TYPE:: Technical Note AUTHOR:: DiBlasio, Paolo AUTHOR:: Fisher, Kathleen DATE:: June 1996 PAGES:: 22 ABSTRACT:: This paper presents an imperative and concurrent extension of the functional object-oriented calculus described in [FHM94]. It belongs to the family of so-called prototype-based object-oriented languages, in which objects are created from existing ones via the inheritance primitives of object extension and method override. Concurrency is introduced through the identification of objects and processes. To our knowledge, the resulting calculus is the first concurrent object calculus to be studied. We define an operational semantics for the calculus via a transition relation between configurations, which represent snapshots of the run-time system. Our static analysis includes a type inference system, which statically detects message-not-understood errors, and an effect system, which guarantees that synchronization code, specified via guards, is side-effect free. We present a subject reduction theorem, modified to account for imperative and concurrent features, and type and effect soundness theorems. NOTES:: [Adminitrivia V1/Prg/19960610] END:: STAN//CS-TN-96-35