Abstract
We describe the reflection model of Oberon-2, a language in the tradition of Pascal and Modula-2. It provides run-time information about the structure of variables, types and procedures and allows the programmer to manipulate the values of variables. The special aspect of the Oberon-2 reflection model is that metainformation is not obtained via metaclasses. It is rather organized as structured sequences of elements stored on a disk, which can be enumerated by an iterator. This results in a simple and uniform access mechanism and keeps the memory overhead to a minimum. We also show a number of challenging applications that have been implemented with this reflection model.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Arnold K., Gosling J.: The Java Programming Language. Addison-Wesley, 1996
Attardi G., et al.: Metalevel Programming in CLOS. Proceedings of the ECOOP’89 Conference. Cambridge University Press, 1989
Database Language — Embedded SQL (X3.168-1989). American National Standards Institute, Technical Committee X3H2
Gamma E., Helm R., Johnson R., Vlissides J.: Design Patterns—Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995
Hof M., Mössenböck H., Pirkelbauer P.: Zero-Overhead Exception Handling Using Metaprogramming. Proceeding of SOFSEM’97, Lecture Notes in Computer Science 1338, 1997
Hof M.: Just-In-Time Stub Generation, Proc. Joint Modular Languages Conference’ 97, Hagenberg, Lecture Notes in Computer Science 1204, Springer-Verlag, 1997
Knasmüller M.: Oberon-D, On Adding Database Functionality to an Object-Oriented Development Environment, Dissertation, University of Linz, 1997
Lehrmann-Madsen O., Moller-Pedersen B., Nygaard K.: Object-Oriented Programming in the BETA Programming Language. Addison-Wesley, 1993
Miller W.M.: Exception Handling without Language Extensions. Proceedings of the USENIX C++ conference, Denver CO, October 1988
Mössenböck H., Koskimies K.: Active Text for Structuring and Understanding Source Code SOFTWARE-Practice and Experience, 26(7): 833–850, July 1996
Mössenböck H., Wirth N.: The Programming Language Oberon-2. Structured Programming, 12(4):179–195, 1991
Obiltschnig G.: An Object-Oriented Interpreter Framework for the Oberon-2 Programming Language, Diploma Thesis, University Linz, 1998
Steindl Ch.: Accesing ODBC Databases from Oberon Programs. Report 9, University of Linz, Institute for Practical Computer Science, 1996
Steindl Ch., Mössenböck H.: Metaprogramming facilities in Oberon for Windows and Power Macintosh. Report 8, University of Linz, Institute for Practical Computer Science, 1996
Templ J.: Metaprogramming in Oberon. Dissertation, ETH Zurich, 1994
Wirth N., Gutknecht J.: The Oberon System. Software—Practice and Experience, 19(9):857–893, 1989
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mössenböck, H., Steindl, C. (1999). The Oberon-2 Reflection Model and its Applications. In: Cointe, P. (eds) Meta-Level Architectures and Reflection. Reflection 1999. Lecture Notes in Computer Science, vol 1616. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48443-4_4
Download citation
DOI: https://doi.org/10.1007/3-540-48443-4_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66280-8
Online ISBN: 978-3-540-48443-1
eBook Packages: Springer Book Archive