Advertisement

A Theory of Objects

  • Martín Abadi
  • Luca Cardelli

Part of the Monographs in Computer Science book series (MCS)

Table of contents

  1. Front Matter
    Pages i-xiii
  2. Prologue

    1. Martín Abadi, Luca Cardelli
      Pages 1-4
  3. Review Object-Oriented Features

    1. Front Matter
      Pages 5-5
    2. Martín Abadi, Luca Cardelli
      Pages 7-10
    3. Martín Abadi, Luca Cardelli
      Pages 11-24
    4. Martín Abadi, Luca Cardelli
      Pages 25-33
    5. Martín Abadi, Luca Cardelli
      Pages 35-49
    6. Martín Abadi, Luca Cardelli
      Pages 51-54
  4. Untyped and First-Order Calculi

    1. Front Matter
      Pages 55-55
    2. Martín Abadi, Luca Cardelli
      Pages 57-78
    3. Martín Abadi, Luca Cardelli
      Pages 79-92
    4. Martín Abadi, Luca Cardelli
      Pages 93-112
    5. Martín Abadi, Luca Cardelli
      Pages 113-128
    6. Martín Abadi, Luca Cardelli
      Pages 129-139
    7. Martín Abadi, Luca Cardelli
      Pages 141-152
    8. Martín Abadi, Luca Cardelli
      Pages 153-165
  5. Second-Order Calculi

    1. Front Matter
      Pages 167-167
    2. Martín Abadi, Luca Cardelli
      Pages 169-184
    3. Martín Abadi, Luca Cardelli
      Pages 185-199
    4. Martín Abadi, Luca Cardelli
      Pages 201-219
    5. Martín Abadi, Luca Cardelli
      Pages 221-240
    6. Martín Abadi, Luca Cardelli
      Pages 241-255
    7. Martín Abadi, Luca Cardelli
      Pages 257-272
    8. Martín Abadi, Luca Cardelli
      Pages 273-283
  6. Higher-Order Calculi

    1. Front Matter
      Pages 285-285
    2. Martín Abadi, Luca Cardelli
      Pages 287-304
    3. Martín Abadi, Luca Cardelli
      Pages 305-324
  7. Epilogue

    1. Martín Abadi, Luca Cardelli
      Pages 325-326
  8. Back Matter
    Pages 327-396

About this book

Introduction

Procedural languages are generally well understood and their formal foundations cast in the forms of various lambda-calculi. For object- oriented languages however the situation is not as clear-cut. In this book the authors propose and develop a different approach by developing object calculi in which objects are treated as primitives. Using object calculi,the authors are able to explain both the semantics of objects and their typing rules and demonstrate how to develop all of the most important concepts of object-oriented programming languages: self, dynamic dispatch, classes, inheritance, protected and private methods, prototyping, subtyping, covariance and contravariance, and method specialization. Many researchers and graduate students will find this an important development of the underpinnings of object-oriented programming.

Keywords

Annotation D programming language Delegation Inform class object object-oriented programming

Authors and affiliations

  • Martín Abadi
    • 1
  • Luca Cardelli
    • 1
    • 2
  1. 1.Systems Research CenterDigital Equipment CorporationPalo AltoUSA
  2. 2.Microsoft ResearchCambridgeUK

Bibliographic information

  • DOI https://doi.org/10.1007/978-1-4419-8598-9
  • Copyright Information Springer-Verlag New York, Inc. 1996
  • Publisher Name Springer, New York, NY
  • eBook Packages Springer Book Archive
  • Print ISBN 978-1-4612-6445-3
  • Online ISBN 978-1-4419-8598-9
  • Series Print ISSN 0172-603X
  • Buy this book on publisher's site