typestar

option en OCaml

La ausencia deletreada Some o None — el tipo que mató al null.

(* option makes absence explicit: Some value or None, no nulls. *)
let find_tag species =
  match species with
  | "sea star" -> Some 207
  | "anemone" -> Some 88
  | _ -> None

let report species =
  match find_tag species with
  | Some tag -> Printf.sprintf "%s wears tag %d" species tag
  | None -> species ^ " is untagged"

let () =
  print_endline (report "sea star");
  print_endline (report "limpet");
  (* The Option module maps and defaults without unwrapping. *)
  let next = find_tag "anemone" |> Option.map succ in
  Printf.printf "Next tag: %d\n" (Option.value next ~default:0)

Cómo funciona

  1. Some 207 y None son las únicas formas.
  2. Matchear obliga a manejar ambos casos.
  3. Option.map y Option.value ~default encadenan sin desenvolver.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
18
Caracteres a escribir
566
Tokens
109
Ritmo de tres estrellas
65 tpm

Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 101 segundos.

Escribe este fragmento

Paso 2 de 3 en Coincidencia de patrones; paso 9 de 29 en Fundamentos del lenguaje.

← Anterior Siguiente →