Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
articulo [2008/01/07 10:27] – etanter | articulo [2008/01/14 15:19] (current) – etanter | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ===== PLEIAD: Explorando Nuevos Lenguajes para Mejores Programas ===== | ||
+ | |||
+ | El laboratorio PLEIAD (Programming Languages and Environments for Intelligent, | ||
+ | |||
+ | Los lenguajes de programación tienen un largo de vida. Si hoy en día Java y C# son muy populares, antes C++ era el lenguaje predilecto. Antes, era C, y antes, FORTRAN. Un lenguaje de programación esta diseñado para calzar con cierto ambiente tecnológico de ejecución, y con el propósito de facilitar el desarrollo de ciertos tipos de programas. A medida que la tecnología cambia, y que los programas que la gente escribe también cambia, un lenguaje se pone cada vez más inadecuado. Por eso también es que un mismo lenguaje es sujeto a evoluciones y cambios, | ||
+ | |||
+ | Además, los lenguajes de programación juegan un rol central en la manera en que los programadores manejan la complejidad de los sistemas computacionales. Por ejemplo, la programación por objetos y por componentes es la base sobre la cual muchos sistemas de gran envergadura de hoy estan construidos. La ubicuidad incesante de la computación a todos los niveles de la sociedad implica más complejidad para el software, y por ende eso llama por mejores formas lingüisticas de manejar esa complejidad. Un ejemplo de este fenómeno es la veloz emergencia del paradigma de Programación Orientada a Aspectos (AOP), el cual permite la definición modular de preocupaciones que son transversales a los objetos de un sistema, como la seguridad o la coordinación de actividades. Con AOP, se logra mejor desacoplamiento y reusabilidad de los componentes y objetos, y eso también permite mejor adaptabilidad del sistema en forma dinámica. | ||
+ | |||
+ | __**Áreas Principales**__\\ | ||
+ | |||
+ | Es en este contexto que se desempeña el laboratorio PLEIAD, cuya investigación al día de hoy abarca tres áreas principales: | ||
+ | la programación por aspectos (AOP), el debugging y comprensión de programas, y la programación de sistemas de computación pervasiva. A continuación detallamos brevemente estas áreas. | ||
+ | |||
+ | **Programación por Aspectos.** Cómo mencionado previamente, | ||
+ | |||
+ | **Debugging.** El debugging consiste en ayudar el desarrollador en encontrar errores en un programa. De forma más general, esto pertenece al área de " | ||
+ | |||
+ | **Computación Pervasiva.** La computación pervasiva, o inteligencia ambiental, se refiere al desarrollo de sistemas computacionales para usuarios móviles con aparátos móviles, en los cuales la integración de los sistemas en la vida díaria es la más transparente posible. Esto requiere de sistemas que sepan captar su ambiente de ejecución y adaptarse a ello, en forma dinámica. Programar dichos sistemas con lenguajes tradicionales implica un nivel de complejidad enorme para manejar todos los detalles relacionados con la naturaleza vólatil del ambiente y de las conexiones. PLEIAD trabaja en lenguajes dedicados, que proveen abstracciones adecuadas para que el programador pueda especificar tanto la percepción del ambiente cómo la adaptación del sistema. Al día de hoy, se experimenta con el lenguaje AmbientTalk, | ||
+ | |||
+ | __**Historia y Logros**__\\ | ||
+ | |||
+ | |||
+ | El laboratorio PLEIAD fue inaugurado recién en Noviembre 2007, con la presencia de Ron Goldman, ingeniero de investigación de Sun Labs en EE.UU., a cargo del proyecto de Sun SPOTs, unos aparatos para inteligencia ambiental dotados de sensores y que corren una máquina virtual Java. PLEIAD está inicialmente formado por dos profesores full-time, Johan Fabry y Éric Tanter, cuatro estudiantes de doctorado y un estudiante de magister. Se están integrandos nuevos miembros, en particular en post-doctorado, | ||
+ | |||
+ | A pesar de ser un laboratorio joven, PLEIAD ya está logrando exponerse a nivel internacional en las distintas áreas en que se desempeña. En la conferencia ACM sobre desarrollo de software orientado a aspectos (AOSD 2008), se presentará un artículo técnico sobre scoping de aspectos dinámicos, se organizará un workshop sobre lenguajes de aspectos específicos a dominios, y se dará una demonstración del debugger TOD desarrollado en PLEIAD. Un artículo técnico sobre el debugger omnisciente ha sido publicado en OOPSLA 2007, la conferencia de referencia del ACM en el área, y otro sobre uso de TOD para programas orientados a aspectos se presentará en el simposio de computación aplicada del ACM (SAC 2008). Tambíen se organizó un workshop sobre computación inspirada en la biología en Diciembre en Valparaíso (BIC 2007), que contó con la presencia de varios expertos internacionales, | ||
+ | |||
+ | // | ||