Abstract
In the object-oriented extension of Ada 95 some constructs and connected type rules have been introduced that restrict the flexibility in using the whole set of features the object-oriented paradigm provides. Especially the introduction of tagged types leads to a loss of potential reuse if efficiency is of concern while the rules connected with dispatching disable full static type checking for subprogram calls. A closer investigation of these constructs and constraints reveals that some of them are completely unnecessary and some could be relaxed with minor changes of the language. With corresponding modifications, the language gains additional flexibility and becomes easier to use, while, through the introduction of multi-methods, the language regains the property of being statically type-safe.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
Ada Reference Manual, Version 6.0, Intermetrics, Inc., 1995.
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.
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.
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.
Grady Booch. Object-Oriented Analysis and Design with Applications. 2nd edition, Benjamin-Cummings, 1994.
Giuseppe Castagna, Giorgio Ghelli, and Giuseppe Longo. A Calculus for Overloaded Functions with Subtyping. Information and Computation, 117(1):115–135, February 1995.
Craig Chambers. Object-Oriented Multi-Methods in Cecil. In European Conference on Object-Oriented Programming, 1992.
Craig Chambers and Gary T. Leavens. Typechecking and Modules for Multi-Methods. Technical Report UW CS&E TR 94-03-01, Dep. of Computer Science and Engineering, University of Washington, March 1992.
Dylan Interim Reference Manual, Apple, June 1994.
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.
Bertrand Meyer. Eiffel: the Language. Prentice Hall, 1992.
Bertrand Meyer. Beware of Polymorphic Catcalls. Unpublished Draft 5, October 1995.
Warwick B. Mugridge, John Hammer, and John G. Hosking. Multi-Methods in a Statically-Typed Programming Language. In European Conference on Object-Oriented Programming, pages 307–324, 1991.
Mats Weber. Proposals for Enhancement of the Ada Programming Language: A Software Engineering Perspective. PhD thesis, Software Engineering Lab, Swiss Federal Institute of Technology, November 1994.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Holzmüller, B. (1996). Extending the object-orientedness of Ada 95. In: Strohmeier, A. (eds) Reliable Software Technologies — Ada-Europe '96. Ada-Europe 1996. Lecture Notes in Computer Science, vol 1088. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0013502
Download citation
DOI: https://doi.org/10.1007/BFb0013502
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61317-6
Online ISBN: 978-3-540-68457-2
eBook Packages: Springer Book Archive