Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diapositivas Paradigma Funcional
Diapositivas Paradigma Funcional
FUNCIONAL
Paradigmas de Lenguajes
3er Año LCC- Facultad CEFyN - UNSJ -
INTRODUCCIÓN
NOTA: podemos abreviar los anidamiento de CAR y CDR usando funciones que los
combinan, ej (CAR (CDR '(A B C))) Ξ (CADR '(A B C))
LAST: Retorna una lista formada con el último elemento de la lista que
recibe como argumento. Si LAST se aplica sobre átomos retorna el átomo.
Ej (LAST '(A B C))(C) ; (LAST 5)5
NTH: Extrae el elemento situado en la posición NRO de la lista.
(NTH <nro> <lista>) NTH toma el cero como base.
Ordinales : SECOND, THIRD , …, TENTH Devuelven el correspondiente
elemento de la lista
CONSTRUCTORES DE LISTAS
(defun opera (X Y)
( + X Y)
(/ X Y)
(* X Y) )
(opera 2 5) ???
Para tener en Cuenta
Funciones Lambda
Usando LAMBDA:
(LAMBDA (L) (CAR (CDR L)) '(A B C)) B
Escribir una función que dada una lista devuelva una nueva lista donde cada
elemento ha sido duplicado.
(duplica-elementos-lista ‟(a b c d e))(A A B B C C D D E E)
Contar el nro de artículos un, una, el, la ;en un texto que se ingresa como lista con
palabras.
(contarti `(una cabra en la montaña) ´(un una el la))
Escribir una función para eliminar los números de una lista plana
(filtra-numeros ‟(1 2 a c 4))(A C)
CONCLUSIONES
Si la solución a un problema
involucra:
Sumergirse en una expresión y no solo a
buscar elementos de una lista entonces
tendrá sentido la recursión.
Transformar una lista en otra nueva,
contabilizar ciertos elementos,
probablemente los mas indicado es la forma
funcional Mapcar.
LISTAS DE PROPIEDADES
Si tengo la propiedad Editorial asociada a los símbolos A1, A2, A3,podría invocar
(Consultar „EDIT „McGRAW-HILL Biblio)
Cierre de Lisp
Lenguaje Lisp
Corresponde al Permite
Implementar
Representación
Sintáctica
define provee
Paradigma
Aplicaciones
Programación Funcional Prefija
en
Polaca de Cambridge
Polaca de Cambridge
Inteligencia
Artificial
Componentes Básicos
Formas Especiales Program.de
Control de Secuencia Auto Cad
Implem. de
Se clasifican Intérpretes
en
Interfaces en
Objetos Funciones Leng.Natural
Cierre de Lisp
OBJETOS
Son basicamente
Según su
Pueden ser
implementación
Par Punteado
T y Nil
Valores
Predefinidos
Pto.Fijo Pto.Flotante
True y False
Cierre de Lisp
FORMAS DE CONTROL
Se clasifican en
Selección
Recursión
Iteracción
?????????
A través
Las más importancia
de
Estrategia de Control
IF COND A través de
Func.Prim. Func.Prim.
Loop Mapcar
Func.Prim F.F
Itera Transforma
Formas Listas
Paradigma
Programación Funcional
Se Caracteriza
Sus Componentes:
Conjunto de Objetos: Átomos y Listas
Conjunto de Funciones: Proyectan Objetos en Objetos
Conjunto de Formas Funcionales: Proyectan Funciones en Funciones
Una única operación: La aplicación [ F:X= F(X) ]
Un método para Definir Funciones
Sigue una filosofía de tratamiento no-destructivo de los parámetros, de modo que la mayoría de
las funciones devuelven un lista resultado de efectuar alguna transformación sobre la que
recibieron, pero sin alterar la original
PARADIGMA FUNCIONAL
FIN
¿CONSULTAS?