Tracks
/
Gleam
Gleam
/
Temario
/
Genéricos
Ge

Genéricos en Gleam

10 ejercicios

Acerca de Genéricos

Un tipo es un tipo genérico cuando puede contener valores de cualquier tipo mediante un parámetro de tipo.

Por ejemplo, este tipo Box tiene el parámetro de tipo a (se escribe con letras minúsculas).

pub type Box(a) {
  Box(a)
}

El parámetro de tipo a es un marcador de posición para cualquier tipo, así que Box se puede usar con strings, enteros o cualquier otro tipo.

Box("Hello, Joe!") // The type is Box(String)

Box(42) // The type is Box(Int)

Un tipo puede tener varios parámetros de tipo, separándolos con comas.

pub type Pair(a, b) {
  Pair(a, b)
}

Funciones genéricas

Los parámetros de tipo también se pueden usar en los argumentos de las funciones.

Esta función toma un valor del tipo a y llama dos veces a una función que toma un a y devuelve un b.

pub fn twice(value: a, f: fn(a) -> b) -> b {
  f(value)
  f(value)
}
// The type is fn(String, fn(String) -> Nil) -> Nil
twice("Hello, Joe!", io.println)
Editar en GitHub El enlace se abre en una ventana o pestaña nueva

Aprende Genéricos

La práctica está bloqueada

Desbloquea 3 ejercicios más para practicar Genéricos