Haskell Y Hugs

Páginas: 44 (10875 palabras) Publicado: 14 de mayo de 2012
Haskell y Hugs


• • •

Sintaxis elemental o Declaraciones o Definiciones o Comentarios Expresiones y valores Tipos Funciones y Definiciones o Paréntisis al rededor de los argumentos o Nombrando funciones o Multiples argumentos o Chequeo de tipos

Definiendo Funciones
• • • •

Definiciones con guardas Definiciones con la clausula where Definiciones con patrones o Patrones n+k Esquemapara la definición de funciones

Tipos Básicos


• • • • •

Enteros o Ejemplos o Ejemplo Patrones Booleanos o Ejemplo de ventas Números de punto flotante o Comparando números reales El tipo caracter El tipo String o La función show Posibles confunciones

Tuplas
• • •

Patrones sobre tuplas Sinónimos (seudónimos) de tipos El ejemplo de la fecha válida

Listas
• •



Ejemplos delistas válidas e inválidas Construcción de listas o Enumeración o Construcción de listas por intervalos o secuencias o Creación de listas por comprensión El ejemplo de las fechas válidas

• •

El ejemplo del día de mala suerte o Diseño e implementación Funciones básicas sobre listas o Concatenación de listas (append) o funciones sobre listas del prelude

Funciones sobre listas


•Recursión sobre listas o Diseño de la solución o Ejemplo de la función double o Ejemplo de la función length o Ejemplo de la función (++) o Ejemplo de función para no múltiplos de 6  Primera solución  Segunda solución o Ejemplo de función para seleccionar solo dígitos de una cadena o Ejemplo extendido: Insertion Sort Más sobre patrones o Un ejemplo

Diseño: El ejemplo de la factura
• • • • • ••

Entendiendo el problema Identificar los Objetos Identificar las operaciones básicas sobre los objetos Elegir una representación para los objetos o Módulos Implementando operaciones básicas sobre los objetos Dividir el proceso en partes más manejables o ?`Posibles alternativas? Resúmen del proceso de diseño

Diseño: Un corrector ortográfico
• • • • •

Entender el problema Identificar losobjetos Elegir la representación de los objetos Dividir el proceso en partes más manejables Implementando las operaciones básicas sobre los objetos

Polimorfismo y funciones de orden superior




Polimorfismo o Tipos genéricos o Polimorfismo vs. Sobrecarga o Sobrecarga o Tipos calificados Funciones de ordenes superior o Mapping

o o

Folding Filtering

Tiplo Algebraicos de Datos
• •• •

Tipos Enumerables o Derivación de instancias Tipos Union Tipos algebraicos recursivos Tipos de datos polimórficos

Árboles en Haskell




Árboles o Terminología o Árboles binarios o Implementando árboles binarios en Haskell Árboles de búsqueda binaria o Relación con el algoritmo de búsqueda binaria o Algoritmo de búsqueda en un BST  Implementación del algortimo de búsqueda paraun BST o Algoritmo de inserción en un BST  Implementación del algoritmo de inserción en un BST o Algoritmo de borrado para BST  Implementenación del algortimos borrado para BST

Haskell y Hugs
Mientras que Haskell es un lenguaje de programación funcional de alto nivel, Hugs es un interprete que entiende el lenguaje Haskell. Cuando se inicia Hugs, se obtiene una ventana de sesión Despues delmensaje de bienvenida, al inicio cada línea verá la palabra Hugs98 esto es un prompt, un indicador del estado de procesamiento. En esta ventana podrá digitar cualquier tipo de expresión matemática y podrá ver el resultado de esta presionando intro (enter). Una vez que el cálculo es computado y el resultado es mostrado, el prompt aparecerá nuevamente. Esto nos indicá que el intérprete está listo pararecibir más instrucciones. No se debe olvidar que el lenguaje o notación en que se escriben las expresiones es Haskell. Por ejemplo, puede introducir algunas expresiones artiméticas simples: Hugs> 1+3-2

2 Hugs.Base> y también otras no tan simples: Hugs> 15*0.30+20*0.30+19*0.40 18.1 Hugs> Este último ejemplo calcúla el promedio ponderado de tres notas, asígnando un peso de 30% a las dos...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Haskell
  • Haskell
  • haskell
  • programas de haskell
  • Resumen Haskell
  • Haskell
  • Haskell
  • Haskell

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS