Currying

Se denomina currying al proceso de representar una función de múltiples argumentos como una función de un sólo argumento. Por ejemplo, la función suma $x+$y es una función de dos argumentos ($x, $y), pero puede verse también como una función de un argumento $x. ¿Cómo?. La clave esta en pensar en la función suma como una función que cuando recibe el primer argumento $x devuelve como resultado una función sub { $x+$_[0] } la cual suma a su argumento el primer argumento $x. Para saber mas sobre currying consulte el libro Higher Order Perl [13]. El término currying hace alusión al lógico americano Haskell Curry (1900-1982) que popularizó el concepto en 1930. Al parecer Gottlob Frege ya habıa introducido la idea en 1893. Moses Schönfinkel la redescubrió en 1924.

Ejercicio 4.18.2   Describa en palabras los dominios inicial y final de las funciones:
  1. La función map.
  2. La función splice
  3. La función first: Consulte la documentación del módulo List::Util .



Subsecciones
Casiano Rodríguez León
Licencia de Creative Commons
Principios de Programación Imperativa, Funcional y Orientada a Objetos Una Introducción en Perl/Una Introducción a Perl
por Casiano Rodríguez León is licensed under a Creative Commons Reconocimiento 3.0 Unported License.

Permissions beyond the scope of this license may be available at http://campusvirtual.ull.es/ocw/course/view.php?id=43.
2012-06-19