UPV-Curry: Un intérprete de Curry con tipos polimórficos y E/S declarativa monádica


Author

Santiago Escobar, María Alpuente, Salvador Lucas, and Germán Vidal.

Abstract

Curry es un lenguaje que combina de una forma elegante las características más importantes de los dos estilos más populares de los lenguajes declarativos. De la programación funcional, el lenguaje hereda la posibilidad de trabajar con expresiones anidadas, tipos polimórficos, funciones de orden superior, evaluación perezosa (guiada por patrones de demanda), selección del modo de evaluación y búsqueda encapsulada. De la programación lógica, se obtienen las variables lógicas, estructuras de datos parciales, búsqueda automática y restricciones. El desarrollo de Curry es una iniciativa internacional que aspira a proporcionar una plataforma común para la investigación, enseñanza y aplicación de los lenguajes lógico-funcionales integrados. En este trabajo, presentamos las características esenciales de la implementación UPV-Curry desarrollada en la Universidad Politécnica de Valencia en el marco de la Acción Integrada hispano-alemana HA1997-0073 que se orienta al desarrollo de técnicas de análisis y transformación de programas Curry.

Key Words

Curry, programación declarativa, programación lógica-funcional.