Abstract:
This article presents the design principles and efficient implementation techniques for ABCL/R3, an object-oriented concurrent reflective language. One of the most distinguished features of ABCL/R3 is compilation techniques using partial evaluation, which effectively remove interpretation from meta-level programs. The meta-level objects are designed so that they can be partially evaluated in an effective manner. Benchmark programs show that our compilation frameworks make object execution drastically faster than interpreter-based implementations, and achieves performance close to nonreflective compilers.
Citations
|
545
|
Partial Evaluation and Automatic Program Generation
– Jones, Gomard, et al.
- 1993
|
|
145
|
An efficient implementation of self - a dynamically-typed object-oriented language based on prototypes
– Chambers, Ungar, et al.
- 1989
|
|
115
|
Designing an Extensible Distributed Language with Meta-Level Architecture
– Chiba, Masuda
- 1993
|
|
106
|
Reflection in an object-oriented concurrent language
– Watanabe, Yonezawa
- 1988
|
|
95
|
Performance and Evaluation of LISP Systems
– Gabriel
- 1985
|
|
62
|
Hybrid group reflective architecture for objectoriented concurrent reflective programming
– Matsuoka, Watanabe, et al.
- 1991
|
|
41
|
Partial evaluation of computation process—an approach to a compiler-compiler
– Futamura
- 1999
|
|
37
|
Object Location Control using Metalevel Programming
– Okamura, Ishikawa
- 1994
|
|
35
|
Reflection and Semantics in a
– Smith
- 1982
|
|
31
|
Compiling away the meta-level in object-oriented concurrent reflective languages using partial evaluation
– Masuhara, Matsuoka, et al.
- 1995
|
|
27
|
Design and Partial Evaluation of Meta-objects for a Concurrent Reflective Languages
– Masuhara, Yonezawa
- 1998
|
|
22
|
K.: Design and implementation of metalevel architecture
– Ishikawa, Hori, et al.
- 1996
|
|
19
|
Schematic: A Concurrent Object-Oriented Extension to Scheme
– Taura, Yonezawa
- 1996
|
|
13
|
L.: Efficient Method Dispatch
– Kiczales, Rodriguez
- 1990
|
|
12
|
Partial evaluation scheme for concurrent languages and its correctness
– Hosoya, Kobayashi, et al.
- 1996
|
|
12
|
Implementing parallel language constructs using a re ective object-oriented language
– Masuhara, Matsuoka, et al.
|
|
12
|
A study on the viability of a production-quality metaobject protocolbased statically parallelizing compiler
– Rodriguez
- 1992
|
|
11
|
Partial Evaluation Techniques for Concurrent Programs
– Marinescu, Goldberg
- 1997
|
|
11
|
RNA secondary structure prediction using highly parallel computers
– Nakaya, Yamamoto, et al.
- 1995
|
|
9
|
Self-applicable partial evaluation for the pi-calculus
– Gengler, Martel
|
|
6
|
Language extension via first-class interpreters
– SIMMONS, JEFFERSON, et al.
- 1992
|
|
5
|
Partial evaluation of call-by-value lambda-calculus with side-e ects
– Asai, Masuhara, et al.
|
|
4
|
Open C++ and its optimization
– Chiba, Masuda
- 1993
|
|
4
|
Architecture Design and Compilation Techniques Using Partial Evaluation in Reflective Concurrent Object-Oriented Languages
– MASUHARA
- 1999
|
|
1
|
Control-related meta-level facilities
– RIVIÉRES
- 1988
|
|
1
|
Adaptive parameter passing”, Object Technologies for Advance Software (ISOTAS'96
– LOPES
- 1996
|