Ataduras let en F#
Inmutable por defecto; mutable es una elección aparte y deletreada.
// let binds immutably; mutable is a separate, spelled-out choice.
let queenYear = 2024
let colonyName = "Willow"
// Inside a scope, shadowing rebinds the name to a new value.
let describeFrames frames =
let frames = frames + 2 // shadowed: counts the super frames too
sprintf "%d frames counting supers" frames
printfn "%s: %s (queen %d)" colonyName (describeFrames 8) queenYear
// The mutable escape hatch updates with <- and stays rare.
let mutable smokerFuel = 100
smokerFuel <- smokerFuel - 35
printfn "Smoker fuel at %d%%" smokerFuel
Cómo funciona
- El
letde nivel superior ata una vez para todo el script. - Dentro de un alcance, un
letnuevo hace sombra al nombre externo. let mutablemás<-es la salida de emergencia explícita.
Palabras clave y builtins usados aquí
let
El intento, en números
- Líneas
- 14
- Caracteres a escribir
- 542
- Tokens
- 54
- Ritmo de tres estrellas
- 70 tpm
Al ritmo de tres estrellas de 70 tokens por minuto, este intento toma unos 46 segundos.
Paso 2 de 3 en Valores; paso 2 de 27 en Fundamentos del lenguaje.