SciELO - Scientific Electronic Library Online

 
vol.16 issue2Deshidratacion de los alcoholes presentes en el aceite fusel y su conversión en alquenos empleando una zeolita tipo HZSM-5Technical assessment of shrimp trawler vessels in the Colombian Caribbean: recommendations for improving fleet efficiency author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


Ingeniería y competitividad

Print version ISSN 0123-3033

Abstract

MORENO, Francisco; JIMENEZ, Jovani  and  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

Keywords : Autonomous programming; autonomous systems; metaprogramming; reflective programming; reflective languages.

        · abstract in Spanish     · text in Spanish     · Spanish ( pdf )