Funciones de Orden Superior Y Combinadores
Mayo 19 2009 :: Haskell, Programación Funcional ::
Una función de orden superior es una función que devuelve otra función.
Un Combinador es un función de orden superior que encapsula un determinado comportamiento de una clase de funciones y provee un template para la creación de estas. Ej:
iter :: (Integer -> Integer -> Integer) -> Integer -> ( Integer -> Integer )
iter op e = fun
where
fun 0 = e
fun m@(n + 1) = op m (fun n)
factorial :: Integer -> Integer
factorial = iter (*) 1
sumatorio :: Integer -> Integer
sumatorio = iter (+) 0
Referencias
Razonando con Haskell;Blas C. Ruiz, Francisco Gutiérrez, Pablo Guerrero y José E. Gallardo;Thomson Editores Spain;2004
Autor: Emiliano Martínez Luque.


Deja un Comentario
Guía de los comentarios
Tu Email es requerido pero no sera publicado.
Podes usar los siguientes tags de HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>Si no comentastes antes tu comentario debera ser aprovado antes de que se lo muestre. Perdón, pero hay demasiado spam.