A theory of Objects by Martín Abadi, Luca Cardelli

By Martín Abadi, Luca Cardelli

Procedural languages are ordinarily good understood and their formal foundations forged within the kinds of a variety of lambda-calculi. For object-oriented languages but the state of affairs isn't as straight forward. during this publication the authors suggest and boost a unique method through constructing item calculi within which items are taken care of as primitives. utilizing item calculi, the authors may be able to clarify either the semantics of gadgets and their typing principles and display the way to enhance the entire most crucial thoughts of object-oriented programming languages: self, dynamic dispatch, sessions, inheritance, secure and personal tools, prototyping, subtyping, covariance and contravariance, and procedure specialization. Many researchers and graduate scholars will locate this an enormous improvement of the underpinnings of object-oriented programming.

Show description

Read or Download A theory of Objects PDF

Best languages & tools books

Fundamentals of computer science using Java

Makes use of an object-based method of the advent of machine technology utilizing Java.

A Programming Language

Iverson okay. E. A Programming Language. (Wiley, 1962)(ISBN 0471430145)

Network Performance Analysis: Using the J Programming Language

The aim of community functionality research is to enquire how traffic-management mechanisms deployed within the community have an effect on the allocation of assets among its clients and the functionality they adventure. This subject should be studied by way of the development of types of site visitors administration mechanisms and staring at how they practice by way of employing them to a couple circulate of community site visitors.

Software Engineering in Modula-2: An Object-Oriented Approach

This publication introduces Modula-2 via an object-oriented programming procedure which has been built over the last 5 years at the BSc and MSc computing device technological know-how classes at Hatfield. bankruptcy 1 introduces the most positive factors of Modula-2 via an instance software, while bankruptcy 2 introduces the techniques required for object-oriented software layout.

Extra info for A theory of Objects

Example text

B' is not sound.

M(a) stands for the invocation of the method m of the current direct superclass, with argument a, and with self still bound to the current self. The latter condition is critical; it ensures that any occurrence of self within the method m is interpreted with respect to the current subclass, and not with respect to any superclass. B The implementation of method lookup must now be reconsidered in light of our discussion of subclasses. In the delegation-based implementation of inheritance there is a method suite for each (sub )class.

Contents := n end; end; object reCellImp: ReCell extends cell is var backup: Integer := 0; override set(n: Integer) is self. set(n); end; method restoreO is self. 3. The extends declaration designates the donor object cell for reCellImp; we assume that the object that follows extends is statically known. As a consequence of this declaration, reCellImp is an object containing a copy of the attributes of cell, with independent state. The effect of override is to replace a method of the donor in the host; note that the embed construct is still needed.

Download PDF sample

Rated 4.71 of 5 – based on 27 votes