Un primer vistazo a Haskell

As of March 2020, School of Haskell has been switched to read-only mode.

En este primer tutorial, conoceremos los principales beneficios de la programción funcional pura y un poco de la sintaxis básica de Haskell.

Sintaxis básica de Haskell

"Hello, World!"

En este punto, no debería de ser problema entender que un "Hello, World!" puede ser tan simple como:

main = putStrLn "Hello, World!"

"where"

Algo muy usado en Haskell para evitar definir muchas funciones auxiliares por todos lados es el uso del where. A continuación, usaremos where:

binOpApp binOp = op

main =
  do
    putStrLn (show (binOpApp add 1 2))
    putStrLn (show (binOpApp sub 1 2))
    where add = (+)
          sub = (-)

"let .. in"

Una notación alternativa es el uso de let .. in:

binOpApp binOp = binOp

main =
  let add = (+)
      sub = (-)
  in do
      putStrLn (show (binOpApp add 1 2))
      putStrLn (show (binOpApp sub 1 2))

Sin duda, la sintaxis de Haskell es elegante. Haskell tiene las fortalezas de un lenguaje fuertemente tipado y la claridad de algunos lenguajes dinámicos.

Ejercicios y soluciones

Segunda parte

Cuando te sientas listo, continua con la segunda parte.