Skip to main content
eScholarship
Open Access Publications from the University of California

The programming language Lagoona : a fresh look at object-orientation

Abstract

Lagoona is a strongly-typed object-oriented programming language based on Oberon. Lacking the class construct found in traditional object-oriented languages, Lagoona separates many of the concerns usually subsumed by classes, such as encapsulation, structure, and behavior, turning them into independent language constructs. A rich data model is provided that can express the difference between specialization and combination, two relations that are otherwise often both mapped onto subtyping.

In contrast to most strongly-typed object-oriented languages, Lagoona's messages are not subordinate to classes, but are stand-alone entities that can be combined with arbitrary objects. A delegation mechanism is provided, by which objects can forward received messages even if they do not "understand" their contents. Lagoona's particular message-send semantics make the construction of extensible systems simple and elegant.

Main Content
For improved accessibility of PDF content, download the file to your device.
Current View