Skip to main content

Towards alias-free pointers

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1098))

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.

Unable to display preview. Download preview PDF.

References

  1. H.G. Baker. Use-once variables and linear objects — storage management, reflection and multi-threading. ACM SIGPLAN Notices, January 1995.

    Google Scholar 

  2. L. Cardelli, J. Donahue, L. Glassman, M. Jordan, and G. Nelson. Modula-3 report (revised). Technical Report 52, Digital System Research Center, November 1989.

    Google Scholar 

  3. J. Y. Girard. Linear logic. Theoretical Computer Science, pages 1–102, 1987.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. W Landi. Undecidebility of static analysis. Lett. Program. Lang. Syst., 1(4), December 1992.

    Google Scholar 

  6. B. Meyer. Object-Oriented Software Construction. Prentice-Hall, 1987.

    Google Scholar 

  7. B. Meyer. Eiffel: The Language. Prentice-Hall, 1992.

    Google Scholar 

  8. N.H. Minsky. On the use of tokens in programming. Technical report, Rutgers University, LCSR, October 1995.

    Google Scholar 

  9. D.L. Parnas. On the criteria to be used in decomposing systems into modules. Communications of the ACM, 15(12), December 1972.

    Google Scholar 

  10. R. Sethi. Programming Languages, Concepts and Constructions. Addison Wesley, 1989.

    Google Scholar 

  11. A. Tanenbaum. Modern Operating Systems. Prentice Hall, 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Pierre Cointe

Rights and permissions

Reprints 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

Publish with us

Policies and ethics