Fully-reflective VMs for ruling software adaptation
A recent survey on paradigms for software adaptation at the language level assessed contemporary reflective systems (RS), aspect-oriented programming (AOP), and context-oriented programming (COP) as three well-established approaches. The survey did not find a clear winner. Our opinion is that this i...
Autores principales: | , , |
---|---|
Formato: | CONF |
Materias: | |
Acceso en línea: | http://hdl.handle.net/20.500.12110/paper_97815386_v_n_p229_Chari |
Aporte de: |
id |
todo:paper_97815386_v_n_p229_Chari |
---|---|
record_format |
dspace |
spelling |
todo:paper_97815386_v_n_p229_Chari2023-10-03T16:43:54Z Fully-reflective VMs for ruling software adaptation Chari, G. Garbervetsky, D. Marr, S. Reflection Software Adaptation Virtual Machines Application programs Aspect oriented programming Network security Reflection Software engineering Surveys Virtual machine Adaptation scenarios Aspect-Oriented Programming (AOP) Context oriented programming Direct modification Execution environments Language levels Reflective systems Software adaptation C (programming language) A recent survey on paradigms for software adaptation at the language level assessed contemporary reflective systems (RS), aspect-oriented programming (AOP), and context-oriented programming (COP) as three well-established approaches. The survey did not find a clear winner. Our opinion is that this is due to the fact that none of these approaches is flexible enough to handle the diversity of possible adaptation scenarios. The reason is that instead of operating directly on the entity that conceptually requires the adaptation, these approaches often require to handle the adaptations in an indirect fashion. In this paper we advocate that a suitable paradigm for software adaptation at the language level must enable direct modification to every concept at both, the application and the execution environment level. This is enabled by a Fully-Reflective Execution Environment (FREE), a flavor of virtual machine in which every component such as the interpreter and the memory is accessible for inspection and modification, programmatically, and at run time. Consequently, we advocate and illustrate how the notion of a FREE extends RS and subsumes AOP and COP. © 2017 IEEE. CONF info:eu-repo/semantics/openAccess http://creativecommons.org/licenses/by/2.5/ar http://hdl.handle.net/20.500.12110/paper_97815386_v_n_p229_Chari |
institution |
Universidad de Buenos Aires |
institution_str |
I-28 |
repository_str |
R-134 |
collection |
Biblioteca Digital - Facultad de Ciencias Exactas y Naturales (UBA) |
topic |
Reflection Software Adaptation Virtual Machines Application programs Aspect oriented programming Network security Reflection Software engineering Surveys Virtual machine Adaptation scenarios Aspect-Oriented Programming (AOP) Context oriented programming Direct modification Execution environments Language levels Reflective systems Software adaptation C (programming language) |
spellingShingle |
Reflection Software Adaptation Virtual Machines Application programs Aspect oriented programming Network security Reflection Software engineering Surveys Virtual machine Adaptation scenarios Aspect-Oriented Programming (AOP) Context oriented programming Direct modification Execution environments Language levels Reflective systems Software adaptation C (programming language) Chari, G. Garbervetsky, D. Marr, S. Fully-reflective VMs for ruling software adaptation |
topic_facet |
Reflection Software Adaptation Virtual Machines Application programs Aspect oriented programming Network security Reflection Software engineering Surveys Virtual machine Adaptation scenarios Aspect-Oriented Programming (AOP) Context oriented programming Direct modification Execution environments Language levels Reflective systems Software adaptation C (programming language) |
description |
A recent survey on paradigms for software adaptation at the language level assessed contemporary reflective systems (RS), aspect-oriented programming (AOP), and context-oriented programming (COP) as three well-established approaches. The survey did not find a clear winner. Our opinion is that this is due to the fact that none of these approaches is flexible enough to handle the diversity of possible adaptation scenarios. The reason is that instead of operating directly on the entity that conceptually requires the adaptation, these approaches often require to handle the adaptations in an indirect fashion. In this paper we advocate that a suitable paradigm for software adaptation at the language level must enable direct modification to every concept at both, the application and the execution environment level. This is enabled by a Fully-Reflective Execution Environment (FREE), a flavor of virtual machine in which every component such as the interpreter and the memory is accessible for inspection and modification, programmatically, and at run time. Consequently, we advocate and illustrate how the notion of a FREE extends RS and subsumes AOP and COP. © 2017 IEEE. |
format |
CONF |
author |
Chari, G. Garbervetsky, D. Marr, S. |
author_facet |
Chari, G. Garbervetsky, D. Marr, S. |
author_sort |
Chari, G. |
title |
Fully-reflective VMs for ruling software adaptation |
title_short |
Fully-reflective VMs for ruling software adaptation |
title_full |
Fully-reflective VMs for ruling software adaptation |
title_fullStr |
Fully-reflective VMs for ruling software adaptation |
title_full_unstemmed |
Fully-reflective VMs for ruling software adaptation |
title_sort |
fully-reflective vms for ruling software adaptation |
url |
http://hdl.handle.net/20.500.12110/paper_97815386_v_n_p229_Chari |
work_keys_str_mv |
AT charig fullyreflectivevmsforrulingsoftwareadaptation AT garbervetskyd fullyreflectivevmsforrulingsoftwareadaptation AT marrs fullyreflectivevmsforrulingsoftwareadaptation |
_version_ |
1807318351151628288 |