Dynamic compilation of a reflective language using run-time specialization
説明
In reflective languages, application programs can customize a language system that executes the application programs. Our premise is that this customizability of reflective languages can be a basic mechanism of software evolution. We present a simple architecture of a reflective language that can dynamically select meta-interpreters, and a dynamic compilation scheme by using run-time specialization (RTS) techniques, which could also be useful to dynamically optimize systems with mechanisms of dynamic software evolution. Our prototype system showed that dynamically compiled reflective programs run more than four times faster than the interpreted ones, and that compilation processes are fast enough to be invoked at runtime. Compared to statically compiled programs, however, dynamically compiled ones yet have 20-30% overheads. We also discuss this problem.
収録刊行物
-
- Proceedings International Symposium on Principles of Software Evolution
-
Proceedings International Symposium on Principles of Software Evolution 128-137, 2002-11-11
IEEE Comput. Soc