×

A lambda calculus of objects and method specialization. (English) Zbl 0886.03010

Summary: This paper presents an untyped lambda calculus, extended with object primitives that reflect the capabilities of so-called delegation-based object-oriented languages. A type inference system allows static detection of errors, such as ‘message not understood’, while at the same time allowing the type of an inherited method to be specialized to the type of the inheriting object. Type soundness is proved using operational semantics and examples illustrating the expressiveness of the pure calculus are presented.

MSC:

03B40 Combinatory logic and lambda calculus
68N01 General topics in the theory of software
68N15 Theory of programming languages
68Q55 Semantics in the theory of computing
03B70 Logic in computer science

Software:

Smalltalk; Eiffel
PDFBibTeX XMLCite