architectures give the programmer the ability to create applications that might customize themselves to runtime-emerging requirements. Computational reflection is a programming language technique that is commonly used to achieve the development of this kind of systems. Most of runtime reflective systems use meta-object protocols (MOPs). However, MOPs restrict the amount of features an application may customize, and the way they can express its own adaptation. Furthermore, this kind of systems uses a fixed programming language: they develop an interpreter, not a whole language-independent platform. What we present in this paper is nitrO, a non-restrictive reflective platform that achieves a real computational-environment jump, making every application and language feature adaptable at runtime –without any previously defined restriction. Moreover, the platform has been built using a generic interpreter, in which the reflection mechanism is independent of the language selected by the programmer. Different applications may dynamically adapt each other, regardless the programming language they use.
[1]
Juan Manuel Cueva Lovelle,et al.
Building a Completely Adaptable Reflective System
,
2001
.
[2]
Anders Andersen.
A note on reflection in Python 1.5
,
1998
.
[3]
J Glaser,et al.
Separation of Concerns
,
2014
.
[4]
G. vanRossum.
Python reference manual
,
1995
.
[5]
Daniel G. Bobrow,et al.
Book review: The Art of the MetaObject Protocol By Gregor Kiczales, Jim des Rivieres, Daniel G. and Bobrow(MIT Press, 1991)
,
1991,
SGAR.
[6]
Urs Hijlzle.
A Third-Generation SELF Implementation: Reconciling Responsiveness with Performance
,
1998
.
[7]
M. Golm,et al.
MetaJava : An Efficient Run-Time Meta Architecture for Java TM
,
1996
.