Subdirecció Subdirecció n Acade Acade mica mica Departamento de Sistemas y Computación Semestre: 8mó Agóstó – Diciembre2014 Ingeniería en Sistemas Computacionales Computacionales Alumno: Ezequiel Zu Zu n iga Lazó
“Historia y antecedentes de la programación funcional” Tarea# 2
Historia y antecedentes de la programación funcional
1930s: Alonzo Church desarrolla el lambda cálculo (teoría básica 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 polimórficos 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 cálculo proporciona un marco teórico para la descripción de las funciones y su evaluación. A pesar de que es una abstracción matemática en lugar de un lenguaje de programación, que constituye la base de casi todos los lenguajes de programación funcionales hoy en día. Una formulación equivalente teórico, la lógica combinatoria, se percibe generalmente como más abstracto que el cálculo lambda y precedió en invención. Combinatoria lógica y cálculo lambda fueron originalmente desarrollados para lograr un enfoque más claro para los fundamentos de las matemáticas. Un lenguaje funcional con sabor temprano era Lisp, desarrollado por John McCarthy y al Instituto Tecnológico de Massachusetts para el IBM 700/7000 series de ordenadores científicos en la década de 1950. Lisp introdujo muchas características que ahora se encuentran en los lenguajes funcionales, aunque Lisp es técnicamente un lenguaje multi-paradigma. Esquema y Dylan fueron posteriormente intenta simplificar y mejorar Lisp. Información de procesamiento del lenguaje es a veces citado como el primer lenguaje de programación funcional basado en computadora. Es un lenguaje de estilo de montaje para manipular listas de símbolos. Se tiene una noción de "generador", lo que equivale a una función de aceptación de una función como un argumento, y, ya que es un lenguaje de nivel de ensamblado, el código 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 mutación y características imperativas similares. Kenneth E. Iverson APL desarrollado en la década de 1960, describió en su libro de 1962 El Lenguaje de Programación. 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 década de 1990, Arthur Whitney, quien había 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 Programación 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 jerárquica 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 artículo de Backus popularizó la investigación en la programación funcional, aunque hizo hincapié en la función de programación de nivel más que el estilo lambda-cálculo que ha llegado a ser asociada con la programación funcional.
En la década 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 más común de las cuales son ahora ML OCaml y estándar. También en la década de 1970, el desarrollo del Plan, como se describe en los documentos de Lambda influyentes libros de texto y la estructura 1985 y la interpretación de los programas de ordenador, trajo conciencia del poder de la programación funcional a la programación-idiomas de la comunidad más amplia. En la década de 1980, por Martin-Lf tipo teoría intuicionista desarrollado, que los programas funcionales asociados con pruebas constructivas de las proposiciones matemáticas arbitrariamente complejas expresan como tipos dependientes. Esto condujo a nuevas y potentes métodos de demostración de teoremas interactivo y ha influido en el desarrollo de muchos lenguajes de programación funcionales posteriores. El lenguaje Haskell comenzó con un acuerdo en 1987 para formar un estándar abierto para la investigación de la programación funcional, comunicados de implementación han estado en curso desde 1990.