SciELO - Scientific Electronic Library Online

 
vol.16 número2Dehydration of alcohols present in fusel oil and its conversion to alkenes using a HZSM-5 zeoliteEvaluación técnica de las embarcaciones de pesca de arrastre del Caribe colombiano: recomendaciones para mejorar la eficiencia de la flota índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

Links relacionados

  • En proceso de indezaciónCitado por Google
  • No hay articulos similaresSimilares en SciELO
  • En proceso de indezaciónSimilares en Google

Compartir


Ingeniería y competitividad

versión impresa ISSN 0123-3033

Resumen

MORENO, Francisco; JIMENEZ, Jovani  y  CASTANEDA, Sebastián. A proposal for classifying reflective programming aimed at the development of autonomous systems. Ing. compet. [online]. 2014, vol.16, n.2, pp.91-104. ISSN 0123-3033.

In this paper, we propose a classification of reflection in levels, with an approach aimed to reach autonomous programming. Reflection is the ability of a program to reason, know and examine itself to act and modify its state at compilation or runtime. In this article, it is proposed four reflection levels according to the level of knowledge, modification ability, types of modifications, time to perform modifications and the reasoning level. Then, it is analyzed different programming languages and they are classified on those levels, based on the reflection capacity that they support. Each classification level is exemplified and finally we present a series of experiments where we compare them with equivalent versions of non-reflective programs. Out experiments showed that although reflective programs were more expensive, in terms of execution time and coding, they offer great flexibility and great potential for the design and development of programs. Therefore, it is the reflexivity the first step to achieve the development of autonomous systems which can simulate or pair biological systems

Palabras clave : Autonomous programming; autonomous systems; metaprogramming; reflective programming; reflective languages.

        · resumen en Español     · texto en Español     · Español ( pdf )