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 usando 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, por lo que Box se puede usar con strings, ints 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 recibe un valor del tipo a y llama dos veces a una función que recibe 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 nueva ventana o pestaña

Aprende Genéricos

La práctica está bloqueada

Desbloquea 3 ejercicios más para practicar Genéricos