XML implementation of frame processor
SSR '01 Proceedings of the 2001 symposium on Software reusability: putting software reuse in context
Portable serialization of CORBA objects: a reflective approach
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Reflective Fault-Tolerant Systems: From Experience to Challenges
IEEE Transactions on Computers
Treating a User-Defined Parallel Library as a Domain-Specific Language
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
Testing MetaObject Protocols Generated by Open Compilers for Safety-Critical Systems
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
OpenJava: A Class-Based Macro System for Java
Proceedings of the 1st OOPSLA Workshop on Reflection and Software Engineering: Reflection and Software Engineering, Papers from OORaSE 1999
A Strategy for Testing MetaObject Protocols in Reflective Architectures
DSN '01 Proceedings of the 2001 International Conference on Dependable Systems and Networks (formerly: FTCS)
Mirrors: design principles for meta-level facilities of object-oriented programming languages
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Techniques for specifying bug patterns
Proceedings of the 2007 ACM workshop on Parallel and distributed systems: testing and debugging
LCPC'01 Proceedings of the 14th international conference on Languages and compilers for parallel computing
Annotating user-defined abstractions for optimization
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Classification and utilization of abstractions for optimization
ISoLA'04 Proceedings of the First international conference on Leveraging Applications of Formal Methods
LCPC'04 Proceedings of the 17th international conference on Languages and Compilers for High Performance Computing
Program transformation with reflection and aspect-oriented programming
GTTSE'05 Proceedings of the 2005 international conference on Generative and Transformational Techniques in Software Engineering
An extensible open-source compiler infrastructure for testing
HVC'05 Proceedings of the First Haifa international conference on Hardware and Software Verification and Testing
Hi-index | 0.00 |
There are a number of programmable macro systems such as Lisp's. While they can handle complex program transformation, they still have difficulty in handling some kinds of transformation typical in object-oriented programming. This paper examines this problem and, to address it, presents an advanced macro system based on ideas borrowed from reflection. Unlike other macro systems, our macro system provides metaobjects as the data structure used for the macro processing instead of an abstract syntax tree. This feature makes it easy to implement a range of transformations of object-oriented programs.