En 2 día(s), 9 hora(s) y 27 minuto(s): El día jueves 21/3 desde las 11:00 hasta las 13:00hs se llevará a cabo una CAPACITACIÓN virtual sobre el RepHip UNR. Para inscribirse debe completar el siguiente formulario: https://forms.gle/ZNCerV1vv5RDGRC16
 

Programación Funcional y Herencia de Clases: Tipos de Datos Algebraicos Extensibles en Scala

Fecha

2014-04-30

Título de la revista

ISSN de la revista

Título del volumen

Editor

Facultad de Ciencias Exactas, Ingeniería y Agrimensura. Universidad Nacional de Rosario

Resumen

Cuando se desarrolla un software muchas veces se tiene que lidiar con tipos de datos recursivamente definidos y operaciones sobre ellos, por ejemplo en un árbol de sintaxis abstracta o en la manipulación simbólica de expresiones. Éstos son comunes tanto en la programación orientada a objetos como en la programación funcional. En el primer paradigma se representan como una jerarquía de clases relacionadas con una clase base común, siguiendo el patrón de diseño Composite, en el segundo como tipos de datos algebraicos. El desafío en estas estructuras, que se encuadra dentro del Expression Problem, es como extender el tipo de datos y las operaciones sobre él sin modificar el código existente, resolviendo los tipos estáticamente y reutilizando las operaciones previamente defininas. El lenguaje de programación Scala unifica los tipos de datos algebraicos con las jerarquías de clases, haciendo posible la utilización de la herencia en un entorno funcional. En este trabajo se investiga el impacto que tiene la unificación de conceptos de la programación funcional y la programación orientada a objetos, en particular, la utilización de la herencia y los tipos algebraicos de datos para resolver el Expression Problem.

Descripción

Palabras clave

Tipos Algebraicos, Extensibles, Expression Problem, Scala

Citación