Investigación de profesor Éric Tanter recibe reconocimiento al artículo científico más influyente

Image preview

El profesor del DCC, Éric Tanter explica que este trabajo unifica distintos enfoques de reflexión, metaprogramación, y programación por aspectos.

Image preview

Diez años después de su publicación, el trabajo de investigación “Execution Levels for Aspect-Oriented Programming”, continua teniendo un significativo impacto tanto en forma cuantitativa como cualitativa.


Compartir

 

El académico fue galardonado con el "Most influential paper award", en mérito del impacto que aún tiene un trabajo presentado en 2010, centrado en el área de programación por aspectos.

 

Un nuevo e importante reconocimiento a su labor académica recibió el profesor del DCC, Éric Tanter, cuyo trabajo de investigación “Execution Levels for Aspect-Oriented Programming”, presentado en 2010 en la "International Conference on Aspect-Oriented Software Development (AOSD), recibió el reconocimiento "Most influential paper award". El académico explica que esta distinción refleja el impacto real –y no proyectado– de un trabajo: "Es decir que diez años después, la gente mira con perspectiva cuál trabajo publicado ese año ha tenido el mayor impacto, tanto en forma cuantitativa (número de citas), como cualitativa (por ejemplo, trabajos que se basaron en esa investigación)". Cuenta además, que el reconocimiento debía recibirlo en la edición 2020 de la conferencia, hoy llamada Programming, pero que debido a la pandemia esto se postergó un año.

 

Cabe destacar que ésta es la segunda vez que el profesor Tanter recibe el "Most influential paper award". En 2018, y en el marco de la misma conferencia, le fue otorgado por su trabajo “Expressive Scoping of Dynamically-Deployed Aspects”.

 

Sobre “Execution Levels for Aspect-Oriented Programming”, el académico señala que éste trabajo de investigación se centra en la Programación por Aspectos (AOP por su sigla en inglés), la que permite definir de manera modular las preocupaciones transversales de una aplicación, como lo son, por ejemplo, la seguridad y la resiliencia a fallas. "Pero como los aspectos agregan (o alteran el) comportamiento de un programa, surge la pregunta del estatus de esa “computación aspectual”: ¿debería ser visible para demás aspectos, o debería ser considerada como algo implícito, escondido? Este trabajo propone una solución flexible a esta pregunta mediante el uso de niveles de ejecución, permitiendo organizar el cómputo en capas: un aspecto que vive en una capa observa la computación que ocurre al nivel inferior y, a su vez, la computación del aspecto es visible para aspectos que viven en la capa superior. Esto es reminiscente de la teoría de tipos de Russell para evitar paradojas lógicas. Además, el diseño de lenguaje propuesto ofrece primitivas para mover cierto cómputo hacia arriba o hacia abajo, para así poder controlar más finamente a qué nivel pertenece qué (parte del) cómputo de un aspecto", explica el profesor Éric Tanter.

 

Destaca, además, que este trabajo unifica distintos enfoques de reflexión, metaprogramación, y programación por aspectos, en lo que define como "un marco conceptual efectivo y simple. Probablemente su simpleza y efectividad es justamente la razón por la cual tuvo tanto impacto", afirma.

 

Tras recibir por segunda vez el reconocimiento "Most influential Paper Award", el académico reflexiona sobre la evolución que ha tenido el tema. Se refiere a los años en que ambos trabajos reconocidos fueron publicados, como sus “años de oro” en el área de AOP. "Luego de varios intentos frustrados por publicar en AOSD, tuve un par de inspiraciones que me llevaron a publicar dos artículos cómo único autor, el primero en 2008—que casi obtuvo el premio al mejor paper ese año (fue finalista)—y el de 2010 que fue premiado como mejor artículo. Y ahora ver que ambos obtuvieron el premio de paper más influyente diez años después de su publicación es un gran reconocimiento", afirma.

 

Al consultarle por los desafíos que le plantea como investigador el recibir este importante reconocimientos en dos oportunidades, el académico indica que la temática de AOP perdió en importancia a partir de 2015. "La razón principal –explica– es que si bien aborda y resuelve un problema fundamental, al hacerlo conlleva otros problemas y complejidades. Todo programador web que usa CSS para separar el aspecto de presentación de su aplicación seguramente ama y odia a la vez este enfoque: puede ser muy útil y también muy frustrante para debuggear, resolver conflictos, definir selectores justos, etc. Lo mismo pasa con AOP, de manera aún más exacerbada dado el poder que conlleva. Al día de hoy el problema de separar preocupaciones transversales en software de manera satisfactoria sigue un tema no resuelto, así que es de esperar que esas ideas vuelvan a reaparecer bajo otra encarnación. De hecho ya está empezando, por ejemplo con el trabajo sobre “efectos y handlers algebraicos” en la comunidad de programación funcional. El tiempo nos dirá", concluye el académico.

 

--
Comunicaciones DCC