En aquesta secció, aprendrem la sintaxi bàsica de Haskell i com escriure el nostre primer programa "Hola Món". Aquest és un pas fonamental per familiaritzar-nos amb el llenguatge i començar a entendre com funciona Haskell.

Què és Haskell?

Haskell és un llenguatge de programació purament funcional, conegut per la seva seguretat de tipus i la seva capacitat per gestionar efectes col·laterals de manera controlada. És utilitzat en una àmplia varietat d'aplicacions, des de la recerca acadèmica fins a la indústria.

Configuració de l'Entorn Haskell

Abans de començar a programar, necessitem configurar el nostre entorn de desenvolupament. Si no ho has fet encara, segueix les instruccions del tema anterior per instal·lar GHC (Glasgow Haskell Compiler) i GHCi (el REPL de Haskell).

Sintaxi Bàsica

Comentaris

Els comentaris en Haskell es poden escriure de dues maneres:

  • Comentaris de línia única: comencen amb --.
  • Comentaris de múltiples línies: comencen amb {- i acaben amb -}.
-- Aquest és un comentari de línia única

{-
Aquest és un comentari
de múltiples línies
-}

Declaració de Variables

En Haskell, les variables es declaren utilitzant l'operador =. Les variables són inmutables, és a dir, no poden canviar el seu valor un cop assignat.

nom = "Haskell"
edat = 30

Funcions

Les funcions en Haskell es defineixen de manera molt senzilla. Aquí teniu un exemple d'una funció que suma dos números:

suma :: Int -> Int -> Int
suma x y = x + y
  • suma és el nom de la funció.
  • :: s'utilitza per especificar el tipus de la funció.
  • Int -> Int -> Int indica que la funció pren dos enters com a arguments i retorna un enter.
  • suma x y = x + y és la implementació de la funció.

Tipus de Dades Bàsics

Haskell té diversos tipus de dades bàsics, com ara:

  • Int: enters
  • Float: nombres de punt flotant
  • Bool: booleans (True o False)
  • Char: caràcters
  • String: cadenes de text (una llista de caràcters)
enter :: Int
enter = 42

flotant :: Float
flotant = 3.14

boolea :: Bool
boolea = True

caracter :: Char
caracter = 'A'

cadena :: String
cadena = "Hola, món!"

Hola Món

Ara que tenim una idea bàsica de la sintaxi de Haskell, escrivim el nostre primer programa "Hola Món".

El Programa

main :: IO ()
main = putStrLn "Hola, món!"

Explicació

  • main és el punt d'entrada del programa.
  • :: IO () indica que main és una acció d'entrada/sortida que no retorna cap valor significatiu (retorna ()).
  • putStrLn és una funció que pren una cadena de text i la imprimeix a la consola.

Executar el Programa

  1. Guarda el codi en un fitxer anomenat HolaMon.hs.
  2. Obre una terminal i navega fins al directori on has guardat el fitxer.
  3. Compila el programa amb GHC:
ghc -o HolaMon HolaMon.hs
  1. Executa el programa:
./HolaMon

Hauries de veure la sortida següent a la consola:

Hola, món!

Exercicis Pràctics

Exercici 1: Salutació Personalitzada

Escriu un programa que demani el nom de l'usuari i imprimeixi una salutació personalitzada.

Solució

main :: IO ()
main = do
    putStrLn "Com et dius?"
    nom <- getLine
    putStrLn ("Hola, " ++ nom ++ "!")

Exercici 2: Suma de Dos Nombres

Escriu un programa que demani dos nombres a l'usuari i imprimeixi la seva suma.

Solució

main :: IO ()
main = do
    putStrLn "Introdueix el primer nombre:"
    primer <- getLine
    putStrLn "Introdueix el segon nombre:"
    segon <- getLine
    let suma = (read primer :: Int) + (read segon :: Int)
    putStrLn ("La suma és: " ++ show suma)

Resum

En aquesta secció, hem après la sintaxi bàsica de Haskell, incloent comentaris, declaració de variables, definició de funcions i tipus de dades bàsics. També hem escrit i executat el nostre primer programa "Hola Món". A més, hem practicat amb alguns exercicis per reforçar els conceptes apresos. En la següent secció, explorarem el REPL de Haskell (GHCi) per interactuar amb el nostre codi de manera més dinàmica.

© Copyright 2024. Tots els drets reservats