Ge

Generici in Gleam

10 esercizi

Informazioni su Generici

Un tipo è un tipo generico quando può contenere valori di qualsiasi tipo usando un parametro di tipo.

Per esempio, questo tipo Box ha il parametro di tipo a (scritto con lettere minuscole).

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

Il parametro di tipo a è un segnaposto per qualsiasi tipo, quindi Box può essere usato con stringhe, interi o qualsiasi altro tipo.

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

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

Un tipo può avere più parametri di tipo separandoli con delle virgole.

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

Funzioni generiche

I parametri di tipo possono anche essere usati negli argomenti delle funzioni.

Questa funzione prende un valore di tipo a e chiama due volte una funzione che prende un a e restituisce 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)
Modifica tramite GitHub Il collegamento si apre in una nuova finestra o scheda

Impara Generici

La pratica è bloccata

Sblocca 3 altri esercizi per esercitarti su Generici