Semestre: 8mo Agosto Diciembre2014 Ingeniera en Sistemas Computacionales Alumno: Ezequiel Zu n iga Lazo
Historia y antecedentes de la programacin funcional Tarea# 2
Historia y antecedentes de la programacin funcional
1930s: Alonzo Church desarrolla el lambda clculo (teora bsica de los lenguajes funcionales). 1950s: John McCarthy desarrolla el Lisp (lenguaje funcional con asignaciones). 1960s: Peter Landin desarrolla ISWIN (lenguaje funcional puro). 1970s: John Backus desarrolla FP (lenguaje funcional con orden superior). 1970s: Robin Milner desarrolla ML (lenguaje funcional con tipos polimrcos e inferencia de tipos). 1980s: David Turner desarrolla Miranda (lenguaje funcional perezoso). 1987: Un comit comienza el desarrollo de Haskell. 2003: El comit publica el Haskell Report
Lambda clculo proporciona un marco terico para la descripcin de las funciones y su evaluacin. A pesar de que es una abstraccin matemtica en lugar de un lenguaje de programacin, que constituye la base de casi todos los lenguajes de programacin funcionales hoy en da. Una formulacin equivalente terico, la lgica combinatoria, se percibe generalmente como ms abstracto que el clculo lambda y precedi en invencin. Combinatoria lgica y clculo lambda fueron originalmente desarrollados para lograr un enfoque ms claro para los fundamentos de las matemticas.
Un lenguaje funcional con sabor temprano era Lisp, desarrollado por John McCarthy y al Instituto Tecnolgico de Massachusetts para el IBM 700/7000 series de ordenadores cientficos en la dcada de 1950. Lisp introdujo muchas caractersticas que ahora se encuentran en los lenguajes funcionales, aunque Lisp es tcnicamente un lenguaje multi-paradigma. Esquema y Dylan fueron posteriormente intenta simplificar y mejorar Lisp.
Informacin de procesamiento del lenguaje es a veces citado como el primer lenguaje de programacin funcional basado en computadora. Es un lenguaje de estilo de montaje para manipular listas de smbolos. Se tiene una nocin de "generador", lo que equivale a una funcin de aceptacin de una funcin como un argumento, y, ya que es un lenguaje de nivel de ensamblado, el cdigo se puede utilizar como datos, por lo IPL puede ser considerado como que tiene de orden superior funciones. Sin embargo, se basa en gran medida de la estructura lista mutacin y caractersticas imperativas similares. Kenneth E. Iverson APL desarrollado en la dcada de 1960, describi en su libro de 1962 El Lenguaje de Programacin. APL fue la principal influencia en la FP de John Backus. A principios de 1990, Iverson y Roger Hui creados J. A mediados de la dcada de 1990, Arthur Whitney, quien haba trabajado previamente con Iverson, creada K, que se usa comercialmente en la industria financiera, junto con su descendiente Q.
John Backus presentado FP en su 1977 Turing Award conferencia "Puede Programacin de ser liberado de la von Neumann Style? Un estilo funcional y su lgebra de programas". l define los programas funcionales que se construye de forma jerrquica por medio de las "formas" que permiten combinar un "lgebra de los programas", en lenguaje moderno, esto significa que los programas funcionales siguen el principio de composicionalidad. El artculo de Backus populariz la investigacin en la programacin funcional, aunque hizo hincapi en la funcin de programacin de nivel ms que el estilo lambda-clculo que ha llegado a ser asociada con la programacin funcional.
En la dcada de 1970, ML fue creado por Robin Milner en la Universidad de Edimburgo, y David Turner desarroll inicialmente el idioma SASL en la Universidad de St. Andrews y luego el idioma Miranda en la Universidad de Kent. ML finalmente se convirti en varios dialectos, la ms comn de las cuales son ahora ML OCaml y estndar. Tambin en la dcada de 1970, el desarrollo del Plan, como se describe en los documentos de Lambda influyentes libros de texto y la estructura 1985 y la interpretacin de los programas de ordenador, trajo conciencia del poder de la programacin funcional a la programacin-idiomas de la comunidad ms amplia. En la dcada de 1980, por Martin-Lf tipo teora intuicionista desarrollado, que los programas funcionales asociados con pruebas constructivas de las proposiciones matemticas arbitrariamente complejas expresan como tipos dependientes. Esto condujo a nuevas y potentes mtodos de demostracin de teoremas interactivo y ha influido en el desarrollo de muchos lenguajes de programacin funcionales posteriores. El lenguaje Haskell comenz con un acuerdo en 1987 para formar un estndar abierto para la investigacin de la programacin funcional, comunicados de implementacin han estado en curso desde 1990.