Skip to main content

Finite unions for Ada 95

  • Conference paper
  • First Online:
Reliable Software Technologies — Ada-Europe '97 (Ada-Europe 1997)

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

Included in the following conference series:

  • 128 Accesses

Abstract

In a recent project the Ada language turned out to be not as flexible as we expected it to be. This forced us to model our application in a way that was less elegant, less maintainable and less efficient. In this paper we propose to add a language construct to the language that would enable us to do what we were missing. The extension is based on finite unions with dispatching and can quite easily be integrated into the language and efficiently implemented.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Rakesh Agrawal, Linda G. DeMichiel, and Bruce G. Lindsay. Static Type Checking of Multi-Methods. In Proceedings of the ACM Conference on Object-Oriented Programming, Systems and Languages, pages 113–128, 1991.

    Google Scholar 

  2. Eric Amiel, Olivier Gruber, and Eric Simon. Optimizing Multi-Method Dispatch Using Compressed Dispatch Tables. In Proceedings of the ACM Conference on Object-Oriented Programming, Systems and Languages, pages 244–258, 1994.

    Google Scholar 

  3. Hiltrud Betz, Bernd Holzmüller, and Rainer Koschke. Experiences in Adjusting a Compiler Toolkit to Generate Ada 95 Code. Ada User Journal, March 1997.

    Google Scholar 

  4. Daniel G. Bobrow, Linda G. DeMichiel, Richard P. Gabriel, Sonya Keene, Gregor Kiczales, and David A. Moon. Common Lisp Object System Specification. SIGPLAN Notices, 23, September 1988.

    Google Scholar 

  5. Giuseppe Castagna, Giorgio Ghelli, and Giuseppe Longo. A Calculus for Overloaded Functions with Subtyping. Information and Computation, 117(1):115–135, February 1995.

    Google Scholar 

  6. Craig Chambers. The Cecil Language. Specification and Rationale. Technical Report 93-03-05, Department of Computer Science and Engineering, University of Washington, March 1993.

    Google Scholar 

  7. Craig Chambers and Gary T. Leavens. Typechecking and Modules for Multi-Methods. In Proceedings of the ACM Conference on Object-Oriented Programming, Systems and Languages, appeared as ACM SIGPLAN Notices, 29(10): 1–15, October 1994.

    Google Scholar 

  8. Dylan Interim Reference Manual, Apple, June 1994

    Google Scholar 

  9. James Gosling, Bill Joy, and Guy Steele. The Java Language Specification. Addison-Wesley, 1996.

    Google Scholar 

  10. J. Grosch and H. Emmelmann. A Tool Box for Compiler Construction. Compiler Generation Report No. 20, GMD Forschungsstelle an der Universität Karlsruhe, Jan. 1990.

    Google Scholar 

  11. William Harrison and Harold Ossher. Subject-Oriented Programming. In Proceedings of the ACM Conference on Object-Oriented Programming, Systems and Languages, pages 411–428, 1993.

    Google Scholar 

  12. Urs Hölzle. Integrating Independently-Developed Components in Object-Oriented Languages. In Proceedings of the 7th European Conference on Object-Oriented Programming, pages 36–56, Springer, 1993.

    Google Scholar 

  13. Bernd Holzmüller. Extending the Object-Orientedness of Ada 95. In Proceedings of the 1996 Ada-Europe International Conference on Reliable Software Technologies, Montreux, Switzerland, pages 357–369, Springer LNCS 1088, 1996.

    Google Scholar 

  14. Bernd Holzmüller. On Designing Extensible Object-Oriented Languages with Dispatching and Modules. Unpublished, 1996.

    Google Scholar 

  15. Daniel H.H. Ingalls. A Simple Technique for Handling Multiple Polymorphism. In Proceedings of the ACM Conference on Object-Oriented Programming, Systems and Languages, pages 347–349, 1986.

    Google Scholar 

  16. Ole Lehrmann Madsen, Birger Møller-Pedersen and Kristen Nygaard. Object-Oriented Programming in the Beta Programming Language. Addison-Wesley, 1993.

    Google Scholar 

  17. Carl Ponder and Bill Bush. Polymorphism Considered Harmful. Software Engineering Notes, 19(2):35–37, April 1994.

    Google Scholar 

  18. David Stoutamire and Stephen Omohundro. The Sather 1.1 Specification. Unpublished, August 18, 1996.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Keith Hardy Jim Briggs

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Holzmüller, B., Plödereder, E. (1997). Finite unions for Ada 95. In: Hardy, K., Briggs, J. (eds) Reliable Software Technologies — Ada-Europe '97. Ada-Europe 1997. Lecture Notes in Computer Science, vol 1251. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63114-3_1

Download citation

  • DOI: https://doi.org/10.1007/3-540-63114-3_1

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63114-9

  • Online ISBN: 978-3-540-69150-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics