Este es sólo un esqueleto sobre esta materia; te invitamos a que colabores completando la información relativa a la misma; al editar tendrás todas las instrucciones para hacerlo.
Que el alumno aprenda programación funcional basándose en los conceptos teóricos básicos del Cálculo
Lambda utilizando en la práctica los lenguajes funcionales Lisp, FP y APL.
Formas funcionales: composición, construcción, inserción aplicación a todo. Definición de funciones.
Unidad 2: APL
Tipos de datos simples y estructurados. Modo comando y modo programa.
Operadores monádicos y diádicos. Operadores aplicados a vectores y matrices. Producto interno y producto externo.
Definición de funciones y procedimientos. Transmisión de parámetros.
Unidad 3: Cálculo Lambda
Definición. Sintaxis. Variables libres y ligadas. Reglas de substitución.
Reglas de conversión: alfa, beta y etha. Orden de evaluación: o. Normal y o aplicativo. Combinadores. Puntos fijos.
Aplicaciones: Conectivos proposicionales, numerales de Church, Thunks.
Unidad 4: Lisp
Átomos y Listas. Primitivas básicas de Lisp. Predicados y condicionales. Definición de funciones. Pasaje de parámetros. Abstracción de funciones y recursividad. Intérrprete de Basic en Lisp. Intérprete de Lisp en Lisp. Definición de pattern matching. Aplicaciones a la inteligencia artificial: Sistemas de producción.
Átomos, secuencias e indefinido. Funciones primitivas. Formas funcionales. Definición de funciones
Unidad II APL
Tipos de datos simples y estructurados. Operadores monádicos y diádicos. Operadores aplicados a vectores y matrices. Definición de funciones y procedimientos. Transmisión de parámetros.
Unidad III Cálculo Lambda
Definición. Sintaxis. Variables libres y ligadas. Reglas de substitución. Reglas de conversión alfa beta y etha. Orden de evaluación: o. normal y o. aplicativo. Aplicaciones.