World Scientific
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×

OPTIMIZING REFLECTIVE PRIMITIVES OF DYNAMIC LANGUAGES

    https://doi.org/10.1142/S021819400800388XCited by:16 (Source: Crossref)

    Dynamic languages are becoming widely used in software engineering due to the flexibility needs of specific software systems. Different example scenarios are the development of dynamic aspect oriented software, Web applications, adaptable and adaptive software or application frameworks. One important lack of these languages is compile-time error detection offered by static languages. However, runtime performance is the most serious limitation to use them in commercial software development. Although JIT optimizing compilation is a widely used technique to speed up intermediate code execution, this has not been successfully applied to dynamically adaptive platforms yet.

    We present an approach to improve the structural reflective primitives offered by dynamic languages. Looking for a language-neutral platform with a good JIT-based runtime performance, we have used the Microsoft shared source implementation of the CLI. Its model has been extended with semantics of prototype-based object-oriented models, much more suitable than the class-based one for reflective environments. This augmented semantics together with JIT generation of native code has produced significantly better runtime performance than the existing implementations.

    The development of this project has been partially funded by Microsoft Research as the Second Rotor Request for Proposals, awarded in 2004. It has also been funded by the Department of Science and Technology (Spain) under the National Program for Research, Development and Innovation, project TIN2004-03453.