Orthogonal type extensions and reductions

  • Authors:
  • Jukka Paakki;Anssi Karhinen;Tomi Silander

  • Affiliations:
  • Nokia Research Center, P.O.Box 156, SF - O21O1 Espoo, Finland;Nokia Research Center, P.O.Box 156, SF - O21O1 Espoo, Finland;Nokia Research Center, P.O.Box 156, SF - O21O1 Espoo, Finland

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 1990

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we present a generalization of Oberon's record type extensions. Our extension mechanism is orthogonally applicable to all the conventional data types found in Pascal-like languages. In order to balance the type system, we present an inverse concept, type reductions, that also can be applied to all the programmer-defined data types. These concepts provide flexible and powerful means for expressing universal subtyping and supertyping in a statically-typed programming language, as well as many possibilities for reuse of data types via a sound mathematical characterization of assignment statements. The presented ideas are under implementation in Alberich, a programming language that can be considered as a natural descendant of Oberon.