Meta-level programmability is beneficial for par-allel/distributed object-oriented computing to improve performance, etc. The major problem, however, is interpretation overhead due to meta-circular interpretation. To solve this problem, we propose a compilation framework for object-oriented concurrent reflective languages using partial evaluation. Since traditional partial evaluators do not allow us to directly deal with meta-circular interpreters written with concurrent objects, we devised techniques such as pre-/post-processing, a new proposed preaction extension to partial evaluation in order to handle side-effects, etc. Benchmarks of a prototype compiler for our language ABCL/R3 indicate that (1) the meta-level interpretation is essentially ' compiled away and (2) meta-level optimizations in a parallel application, running on a Fujitsu MPP AP1000 exhibits only 10-30% overhead compared to the hand-crafted source-level optimization in a non-reflective language. © 1995, ACM. All rights reserved.
CITATION STYLE
Masuhara, H., Matsuoka, S., Asai, K., & Yonezawa, A. (1995). Compiling Away the Meta-Level in Object-Oriented Concurrent Reflective Languages Using Partial Evaluation. ACM SIGPLAN Notices, 30(10), 300–315. https://doi.org/10.1145/217839.217869
Mendeley helps you to discover research relevant for your work.