historia lógico y matemático norteamericano pionero de la lógica matemática moderna. desarrolló...

26

Upload: consuelo-gamino

Post on 23-Jan-2016

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo
Page 2: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Historia

Page 3: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Historia

Lógico y matemático norteamericano

Pionero de la lógica matemática moderna.

Desarrolló la lógica combinatoria, que es la base de un estilo de programación funcional.

Su trabajo ha sido útil en ciencias de la computación y en el diseño de lenguajes.

Haskell Brooks Curry (1900 - 1982)

Su nombre rinde homenaje a:

Page 4: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Origen de Haskell

En los años 1987 se constituyó un comité cuyo objetivo era crear un lenguaje funcional que reuniera las características de los múltiples lenguajes funcionales de la época, el más notable Miranda, y resolviera la confusión creada por la proliferación de los mismos

Page 5: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Desarrollado por:

Universidad de YaleUniversidad de Glasgow

Page 6: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Reúne las característica de:

HASKELL

ML

SASL

KRC

MIRANDA

ISWIN

Page 7: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Primeras versiones de HaskellHaskell 1.0 (1987)

Haskell 1.1 (1990)

Haskell 1.2 (1992)

Haskell 1.3 (1996)

Haskell 1.4 (1997)

Haskell 98 (1999)

Page 8: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Influencio a:

HASKELL

CLEAN

CLOS

PYTHON

Page 9: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Paradigmas

Page 10: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Haskell: LP funcional puro

Paradigma principal es la “programación funcional”

En lugar de realizar acciones en secuencia, evalúan expresiones.

Utiliza la interacción y combinación de las funciones.

Page 11: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Cualidades de los LP funcionalTodos los procedimientos son funciones y

distinguen claramente los valores de entrada (parámetros) de los de salida (resultados).

No existen variables ni asignaciones – las variables han sido reemplazadas por los parámetros.

No existen ciclos – éstos han sido reemplazados por las llamadas recursivas.

Page 12: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Algunas características:

Funciones de orden superior.Evaluación perezosa.Fuertemente tipado.Los tipos son inferidos

Page 13: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Funciones de orden superiorUn lenguaje utiliza funciones de orden

superior, permite que las funciones sean tratadas como valores

Que sean pasadas como argumentos de funciones y que sean devueltas como resultados.

Page 14: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Evaluación perezosaLos lenguajes tradicionales, evalúan todos los

argumentos de una función antes de conocer si éstos serán utilizados.

Consiste en no evaluar un argumento hasta que no se necesita.

La evaluación perezosa nos asegurará que nada más es evaluado innecesariamente.

Page 15: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Fuertemente TipadoSe asocia un tipo a toda una expresión.

cualquier expresión a la que no se le pueda asociar un tipo es rechazada como incorrecta antes de la evaluación

Page 16: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Tipos InferidosA diferencia de otros lenguajes fuertemente

tipados, en Haskell los tipos son inferidos automáticamente.

El programador no está obligado a declarar el tipo de las expresiones.

Los sistemas de inferencia de tipos permiten una mayor seguridad evitando errores de tipo en tiempo de ejecución y una mayor eficiencia, evitando realizar comprobaciones de tipos en tiempo de ejecución.

Page 17: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Dominios de Aplicación

Page 18: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Lenguaje puramente FuncionalNo se destaca como un gran tipo de lenguaje

potencial para crear programas mas complejos o de carácter de aplicaciones

Page 19: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Aplicaciones de HaskellFran (Functional Reactive Animations) es

una biblioteca para realizar animaciones usando Haskell.

Pan es una biblioteca para generar imágenes usando Haskell.

Haskore es una biblioteca para generar música usando Haskell.

Page 20: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Inteligencia artificialEn haskell unos de los dominios de aplicación es la “inteligencia artificial”

Page 21: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Juegos 3D: Frag

Page 22: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Implementacion del Lenguaje de Programacion

Page 23: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Haskell: Traducción InterpretativaLenguajes interpretado: son aquellos en que la traducción a lenguaje maquina se produce durante la ejecución

Page 24: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

Implementaciones:

HUGS

GHC

NHC 98

HBC

HELIUM

Page 25: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

GHCi

Page 26: Historia Lógico y matemático norteamericano Pionero de la lógica matemática moderna. Desarrolló la lógica combinatoria, que es la base de un estilo

WinHugs