Abstract
There are various ways in which programming languages may deal with the use of objects that have no value. They may or may not treat such uses as errors and may or may not trap such errors. The evolution from the preliminary version of Ada TM to the 1980 version and then to the 1982 version is a case in point. A basis for investigation resting on the desire for more reliable software is presented. Ways of declaring types with and without the value unassigned, derivations from such types, and the meaning of unassigned for composite types are all investigated. Static and dynamic assignment of the value unassigned are introduced, and the interaction of these with other design factors, especially unassigned composite objects, is detailed. It is shown that the typical dual view of composite objects, both as objects and composites of other objects, leads to inconsistencies in the dynamic treatment of unassigned composites and to significant implementation inefficiencies. © 1984, ACM. All rights reserved.
Author supplied keywords
Cite
CITATION STYLE
Winner, R. I. (1984). Unassigned objects. ACM Transactions on Programming Languages and Systems (TOPLAS), 6(4), 449–467. https://doi.org/10.1145/1780.1785
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.