Introducción
En esta sección, aprenderemos los conceptos básicos de la sintaxis de Haskell y crearemos nuestro primer programa: "Hola Mundo". Este es un paso fundamental para familiarizarnos con la estructura y las reglas del lenguaje.
Conceptos Clave
- Comentarios
- Declaraciones de Variables
- Funciones Básicas
- Entrada y Salida (I/O)
Comentarios
En Haskell, los comentarios se utilizan para explicar el código y no son ejecutados por el compilador. Hay dos tipos de comentarios:
- Comentarios de una línea: Comienzan con
--
. - Comentarios de múltiples líneas: Comienzan con
{-
y terminan con-}
.
Declaraciones de Variables
En Haskell, las variables se declaran de manera inmutable, lo que significa que una vez que se les asigna un valor, no pueden cambiar.
Funciones Básicas
Las funciones en Haskell se definen utilizando el símbolo =
. Aquí hay un ejemplo de una función simple que suma dos números:
suma
es el nombre de la función.::
se utiliza para especificar el tipo de la función.Int -> Int -> Int
indica que la función toma dos enteros y devuelve un entero.suma x y = x + y
es la implementación de la función.
Entrada y Salida (I/O)
La entrada y salida en Haskell se maneja de manera diferente a otros lenguajes debido a su naturaleza funcional pura. Utilizamos el tipo IO
para representar operaciones de entrada y salida.
Ejemplo: Hola Mundo
Vamos a escribir nuestro primer programa en Haskell que imprime "Hola Mundo" en la consola.
main
es el punto de entrada del programa.:: IO ()
indica quemain
es una acción de entrada/salida que no devuelve ningún valor significativo (representado por()
).putStrLn "Hola Mundo"
es una función que imprime una cadena de texto seguida de una nueva línea.
Explicación Detallada
-
Declaración de la Función
main
:main :: IO ()
Aquí estamos declarando que
main
es una acción de tipoIO
que no devuelve ningún valor significativo. -
Definición de la Función
main
:main = putStrLn "Hola Mundo"
Estamos definiendo
main
para que ejecute la acciónputStrLn "Hola Mundo"
, que imprime "Hola Mundo" en la consola.
Ejercicio Práctico
Ejercicio 1: Modificar el Mensaje
Modifica el programa "Hola Mundo" para que imprima "¡Bienvenido a Haskell!".
Solución
Ejercicio 2: Crear una Función de Saludo
Crea una función llamada saludo
que tome un nombre como argumento y devuelva un saludo personalizado. Luego, modifica main
para usar esta función.
Solución
saludo :: String -> String saludo nombre = "Hola, " ++ nombre ++ "!" main :: IO () main = putStrLn (saludo "Estudiante")
Explicación de la Solución
-
Definición de la Función
saludo
:saludo :: String -> String saludo nombre = "Hola, " ++ nombre ++ "!"
saludo
toma unString
(nombre) y devuelve unString
(saludo).- Utilizamos el operador
++
para concatenar cadenas.
-
Uso de la Función
saludo
enmain
:main = putStrLn (saludo "Estudiante")
- Llamamos a
saludo
con el argumento"Estudiante"
y pasamos el resultado aputStrLn
.
- Llamamos a
Conclusión
En esta sección, hemos cubierto los conceptos básicos de la sintaxis de Haskell y hemos creado nuestro primer programa "Hola Mundo". También hemos aprendido a definir funciones simples y a manejar la entrada y salida básica. Estos fundamentos nos preparan para explorar conceptos más avanzados en los próximos módulos.
Curso de Programación en Haskell
Módulo 1: Introducción a Haskell
- ¿Qué es Haskell?
- Configuración del Entorno de Haskell
- Sintaxis Básica y Hola Mundo
- Haskell REPL (GHCi)