Static Correctness of Hierarchical Procedures

Authors

  • Michael I. Schwartzbach

DOI:

https://doi.org/10.7146/dpb.v18i295.6689

Abstract

A system of hierarchical, imperative, fully recursive types allows program fragments written for small types to be reused for all larger types. To exploit this property to enable type-safe hierarchical procedures, it is necessary to impose a static requirement on procedure calls. We introduce an example language and prove the existence of a sound requirement which preserves static correctness while allowing hierarchical procedures. This requirement is further shown to be optimal, in the sense that it imposes as few restrictions as possible. This establishes the theoretical basis for a very powerful and general type hierarchy with static type checking, which enables 1st order polymorphism and (multiple) inheritance in a language with assignments.

Author Biography

Michael I. Schwartzbach

Downloads

Published

1989-11-01

How to Cite

Schwartzbach, M. I. (1989). Static Correctness of Hierarchical Procedures. DAIMI Report Series, 18(295). https://doi.org/10.7146/dpb.v18i295.6689