Saltar a contenido


Qué es Loro

El Proyecto Loro trata de la construcción de una herramienta informática abierta, modular y flexible que sirva de apoyo para los principiantes en el aprendizaje de la programación. Utiliza un lenguaje propio e incluye un entorno de desarrollo integrado enfocado a estudiantes. El lenguaje se inspira en una metodología de "especificar, luego implementar"; primero debe especificarse una tarea antes de escribir cualquier implementación (algoritmo). El concepto de especificación, por el cual se establece un contrato entre proveedores y clientes de la tarea, se concretiza a través de una construcción que es compilable independientemente. Los algoritmos correspondientes pueden implementarse tanto en el propio lenguaje Loro como en el lenguaje Java. El entorno integrado provee funcionalidades para un desarrollo dirigido por pruebas, coloreamiento de sintaxis, y generación automática de documentación HTML y su visualización.

En síntesis, el Sistema de Programación Loro ha sido diseñado bajo los siguientes principios: 1) "programar para una interfaz, no para una implementación" (Gamma et al, 1995); 2) "diseño por contrato"; y 3) "desarrollo dirigido por pruebas."

Paradigma

El soporte central del proyecto está inspirado en el diseño por contrato aplicado a la programación imperativa, buscándose una fundamentación que sea extensible hacia la programación orientada a objetos. El lenguaje incluye dos construcciones básicas: una, llamada especificación, para representar los problemas desde el punto de vista externo; y otra, llamada algoritmo, para representar las posibles soluciones a tales problemas. El lema en Loro es primero especificar, luego implementar para dar mayor énfasis desde el principio al carácter semántico de la programación, circunscribiendo los detalles sintácticos y algorítmicos del lenguaje en una categoría bien definida, más fácil de identificar y diferenciar para los estudiantes.

En términos generales, la propuesta está dirigida a fomentar sólidas bases hacia la ingeniería de software, entendida ésta como el conjunto de principios y técnicas de soporte para el desarrollo predecible de sistemas correctos, adaptables y eficientes.

Estado actual

El proyecto se encuentra en fase de desarrollo principalmente en su componente computacional. Recientemente (junio 2004) se ha comenzado un proceso de traducción (localization) tal que el sistema va a estar habilitado para diferences idiomas. En cuanto al componente educativo, si bien la implementación de referencia ha contado desde sus inicios con un marco didáctico de soporte, este aspecto amerita aún una validación formal y cuantitativa.

Desde su origen, el proyecto ha estado guiado por el objetivo de constituirse en un apoyo efectivo en la enseñanza-aprendizaje de la programación. Así se reflejó por largo tiempo en la documentación del sitio del proyecto en Internet, incluso orientando la página inicial al mismo aprendiz de programación y dejando como enlaces las páginas para el maestro y para el desarrollo. Recientemente, se tomó la decisión de mantener y enfatizar el carácter de desarrollo que en efecto ha sido la principal actividad durante su existencia. Este énfasis se mantendrá en tanto se logre un nivel adecuado tanto de consolidación de la herramienta, como de colaboración en su parte aplicativa. Durante esta fase de desarrollo, no obstante, todo aporte en la temática educativa seguirá siendo muy bienvenido como elemento enriquecedor del proyecto en su propósito general.

Origen del proyecto

La idea de este proyecto surgió en 1996. Yo era profesor en la facultad de Ingeniería de Sistemas de la Universidad Autónoma de Manizales (Colombia). Mi inquietud por disponer de mejores herramientas para enseñar a programar empezó a tomar forma como resultado de muchas pesquizas en la red, además de varias discusiones al interior de la coordinación en el área de computación de dicha facultad. Para aquel momento, Java acababa de hacer su estruendoso debut en el mundo informático; y ahí estaba yo, probando y devorando la documentación del que creía era por fin el lenguaje que nos iba a salvar de muchos dolores de cabeza! Incluso comenzamos tempranamente a utilizar Java como primer lenguaje a estudiantes recién ingresados a carrera. Y también aprendimos la lección. Entre tanto, yo seguía elaborando la idea de desarrollar un lenguaje desde el principio pensando en fines de enseñanza. Y empecé a utilizar Java para la implementación de un prototipo de referencia. Hoy, después de más de 6 años (de intermitentes etapas de trabajo, por cierto), debo decir que si bien se han madurado significativamente muchos de sus elementos, el carácter de prototipo prevalece.

Aprendiendo/Enseñando

Enlaces interesantes.

Para quienes aprenden

Para quienes enseñan

Imágenes

Ventana principal para proyecto:

Caja de diálogo para instalar un proyecto:

Propiedades generales de un proyecto

Caja de diálogo para exportar un proyecto

Descarga

Instalación

Puesto que Loro está implementado en el lenguaje Java, se requiere primero tener un Entorno de Ejecución Java (JRE, Java Runtime Environment) debidamente instalado. Se puede descargar un JRE sin costo desde: https://java.sun.com/j2se/1.4/download.html en la sección "Download J2SE JRE."

Nota

Sun Microsystems continuamente está cambiando la organización de su página de descargas, la cual incluye diversas herramientas y paquetes que NO son requeridos. Sólo debe ingresarse por el enlace correspondiente a "The J2SE Java Runtime Environment (JRE)" (a hoy abril 5, 2004, el nombre del enlace es "Download J2SE JRE"); Habrá que hacer algunos clics antes de poder descargarlo (aceptar la licencia de uso y escoger la opción según el sistema operativo).

Una vez se tenga el ambiente Java instalado, se puede ahora lanzar el instalador de Loro que se haya descargado. Dependiendo del sistema en que se haga la instalación, es posible que sólo baste con hacer un doble clic al archivo instalador desde el programa de exploración de archivos. En Windows esto suele suceder así. Si esto funciona, sólo resta seguir las instrucciones del programa de instalación. Si el doble clic no funciona, entonces:

  • Abrir una ventana de comandos (esa en donde se puede escribir comandos desde el teclado).
  • Cambiarse al directorio en donde se ha descargado el instalador de Loro.
  • Ingresar el comando: java -jar XXXXX.jar
  • Seguir las instrucciones del programa de instalación

(en donde XXXXX debe reemplazarse por lo el nombre concreto del archivo instalador). Si el mismo comando 'java' no se encuentra, es porque el JRE no ha sido instalado apropiadamente.

Last updated: May 3, 2007.