Abstract:
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.
Registro:
Documento: |
Conferencia
|
Título: | Fully-reflective VMs for ruling software adaptation |
Autor: | Chari, G.; Garbervetsky, D.; Marr, S. |
Filiación: | Departamento de Computación, FCEyN, UBA, ICC-CONICET, Argentina Johannes Kepler University, Linz, Austria
|
Palabras clave: | 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ño: | 2017
|
Página de inicio: | 229
|
Página de fin: | 231
|
DOI: |
http://dx.doi.org/10.1109/ICSE-C.2017.144 |
Título revista: | 39th IEEE/ACM International Conference on Software Engineering Companion, ICSE-C 2017
|
Título revista abreviado: | Proc. - IEEE/ACM Int. Conf. Softw. Eng. Companion, ICSE-C
|
Registro: | https://bibliotecadigital.exactas.uba.ar/collection/paper/document/paper_97815386_v_n_p229_Chari |
Referencias:
- Chari, G., Garbervetsky, D., Marr, S., Building efficient and highly run-time adaptable virtual machines (2016) Proceedings of the 12th Symposium on Dynamic Languages, DLS'16. ACM, , to appear
- Chari, G., Garbervetsky, D., Marr, S., Ducasse, S., Towards fully reflective environments (2015) 2015 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward), Onward 2015, pp. 240-253. , New York, NY, USA. ACM
- Hirschfeld, R., Costanza, P., Nierstrasz, O., Context-oriented programming (2008) Journal of Object Technology, 7 (3)
- Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J., (1997) Aspect-oriented Programming, pp. 220-242. , Springer
- Kiczales, G., Rivieres, J.D., (1991) The Art of the Metaobject Protocol, , MIT Press
- Nierstrasz, O., Denker, M., Girba, T., Lienhard, A., Röthlisberger, D., Change-enabled software systems (2008) Software-Intensive Systems and New Computing Paradigms, pp. 64-79. , Springer-Verlag, Berlin, Heidelberg
- Redmond, B., Cahill, V., Supporting unanticipated dynamic adaptation of application behaviour (2002) ECOOP '02, pp. 205-230. , Springer
- Röthlisberger, D., Denker, M., Tanter, E., Unanticipated partial behavioral reflection: Adapting applications at runtime (2008) Comput. Lang. Syst. Struct., 34 (2-3), pp. 46-65. , July
- Salvaneschi, G., Ghezzi, C., Pradella, M., An analysis of language-level support for self-adaptive software (2013) TAAS, 8 (2), p. 7
- Smith, B.C., Reflection and semantics in lisp (1984) Proceedings of the 11th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, POPL '84, pp. 23-35. , ACMA4 -
Citas:
---------- APA ----------
Chari, G., Garbervetsky, D. & Marr, S.
(2017)
. Fully-reflective VMs for ruling software adaptation. 39th IEEE/ACM International Conference on Software Engineering Companion, ICSE-C 2017, 229-231.
http://dx.doi.org/10.1109/ICSE-C.2017.144---------- CHICAGO ----------
Chari, G., Garbervetsky, D., Marr, S.
"Fully-reflective VMs for ruling software adaptation"
. 39th IEEE/ACM International Conference on Software Engineering Companion, ICSE-C 2017
(2017) : 229-231.
http://dx.doi.org/10.1109/ICSE-C.2017.144---------- MLA ----------
Chari, G., Garbervetsky, D., Marr, S.
"Fully-reflective VMs for ruling software adaptation"
. 39th IEEE/ACM International Conference on Software Engineering Companion, ICSE-C 2017, 2017, pp. 229-231.
http://dx.doi.org/10.1109/ICSE-C.2017.144---------- VANCOUVER ----------
Chari, G., Garbervetsky, D., Marr, S. Fully-reflective VMs for ruling software adaptation. Proc. - IEEE/ACM Int. Conf. Softw. Eng. Companion, ICSE-C. 2017:229-231.
http://dx.doi.org/10.1109/ICSE-C.2017.144