Abstract
This paper argues that pointer-induced aliasing can be avoided in many cases by means of a concept of unique pointer. The use of such pointers is expected to fortify the concept of encapsulation, to make systems easier to reason about, to provide better control over the interaction between threads, and to make storage management safer and more efficient. We show that unique pointers can be implemented by means of few minor and virtually costless modifications in conventional OO languages, such as Eiffel or C++; and that they can be used conveniently in a broad range of algorithms and data structures.
Work supported by NSF grant No. CCR-9308773.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
H.G. Baker. Use-once variables and linear objects — storage management, reflection and multi-threading. ACM SIGPLAN Notices, January 1995.
L. Cardelli, J. Donahue, L. Glassman, M. Jordan, and G. Nelson. Modula-3 report (revised). Technical Report 52, Digital System Research Center, November 1989.
J. Y. Girard. Linear logic. Theoretical Computer Science, pages 1–102, 1987.
Dougles E. Harms and Bruce W. Weide. Copying and swapping: Influences on the design of reusable software components. IEEE Transactions on Software Engineering, pages 424–434, May 1991.
W Landi. Undecidebility of static analysis. Lett. Program. Lang. Syst., 1(4), December 1992.
B. Meyer. Object-Oriented Software Construction. Prentice-Hall, 1987.
B. Meyer. Eiffel: The Language. Prentice-Hall, 1992.
N.H. Minsky. On the use of tokens in programming. Technical report, Rutgers University, LCSR, October 1995.
D.L. Parnas. On the criteria to be used in decomposing systems into modules. Communications of the ACM, 15(12), December 1972.
R. Sethi. Programming Languages, Concepts and Constructions. Addison Wesley, 1989.
A. Tanenbaum. Modern Operating Systems. Prentice Hall, 1992.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Minsky, N.H. (1996). Towards alias-free pointers. In: Cointe, P. (eds) ECOOP ’96 — Object-Oriented Programming. ECOOP 1996. Lecture Notes in Computer Science, vol 1098. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053062
Download citation
DOI: https://doi.org/10.1007/BFb0053062
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61439-5
Online ISBN: 978-3-540-68570-8
eBook Packages: Springer Book Archive