Funciones anónimas y do en Julia
Flechas para las descartables; bloques do para argumentos multilínea.
alts = [22.0, 47.5, 63.0, 81.5]
# Arrow syntax makes a throwaway function.
above_horizon = filter(a -> a > 30, alts)
println(above_horizon)
# do blocks hand a multi-line function to the first argument.
plans = map(alts) do alt
band = alt > 60 ? "zenith" : "low"
"slew to $alt ($band)"
end
foreach(println, plans)
Cómo funciona
a -> a > 30es un predicado anónimo parafilter.map(alts) do alt ... endpasa el bloque como la función.foreach(println, plans)aplica sin coleccionar.
Palabras clave y builtins usados aquí
doend
El intento, en números
- Líneas
- 12
- Caracteres a escribir
- 314
- Tokens
- 64
- Ritmo de tres estrellas
- 65 tpm
Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 59 segundos.
Paso 3 de 3 en Funciones; paso 9 de 27 en Fundamentos del lenguaje.