Haskell Hero
Haskell Hero es un manual interactivo del lenguaje Haskell para principiantes.
|
Conocimientos básicosEn generalEl contenido de esta lección no hay que estudiarlo a fondo. Es más como un resumen de nociones básicas que hay que saber para las próximas lecciones. Recomiendo que lo leáis rápidamente por primera vez y después podéis volver a leerlo si es necesario. Case sensitive
Para Haskell el tamaño importa. Es muy diferente escribir en Hugs
La distinción entre letras mayúsculas y minúsculas no es solo un acuerdo de los programadores, sino que Hugs verdaderamente sigue la distinción. Si escribimos para evaluar la expresión FalseHugs la interpreta como un valor de verdad, identifica que esta expresión ya no se puede simplificar y recibimos como resultado False de nuevo.
Sin embargo, si escribimos falseHugs nos dice que no conoce tal variable/función. Tipos y estructuras de datosn tipo es una colección de valores relacionados. Se desarrollará más en la lección Tipos. En nuestro manual vamos a trabajar son siguientes tipos y estructuras:
Aridad de la funciónLa aridad es una característica de funciones que indica cuantos parámetros necesita la función para su evaluación completa.
En el modelo de cajas, la aridad de función coincide con el número de agujeros en la cara superior de la caja. La función unaria f , la función binaria g y la función ternaria h
if-then-elseEn Haskell hay una construcciónif condicion then cumplido else no cumplidodonde
Algunas características importantes de las expresiones if-then-else :
Ejemplo:
Escribid una expresión que identifique si
Como la condición, ponemos la expresión if even 5 then 'A' else 'N'lo que se evalúa a: if even 5 then 'A' else 'N' ~> if False then 'A' else 'N' ~> 'N' Comentarios
En el código fuente también podemos escribir nuestras notas, ya que el intérprete las va a ignorar. Comentarios los escribimos empezándolos con dos rayas el código del programa -- comentario que se va a ignorar durante la compilación el otro código del programa Los comentarios también los podemos usar para evitar la compilación de una parte del código. f 0 = 0 -- f 1 = 1 esta línea como si no estuviese aquí f x = x + 1Este uso de comentarios es muy útil cuando depuramos un programa. Cuando queremos que una parte del código no se compile pero no sabemos si no la vamos a necesitar en el futuro, en vez de borrarla solo la ponemos en comentario. Después la hacemos disponible con solo quitar las rayas.
Si necesitamos hacer un comentario de más líneas, lo ponemos entre caracteres el código del programa {- comentario comentario comentario comentario -} el otro código |