Funciones
Definir funciones, valores de retorno y anotaciones de efectos.
Funciones
Las funciones siguen siendo orientadas a expresiones, y las anotaciones de efecto siguen siendo la forma pública de marcar efectos secundarios.
Verificado hoy
- Los efectos explícitos con
with ...siguen siendo parte real del contrato del lenguaje. - La inferencia local de tipos funciona para bindings y parámetros sencillos.
- Trata los tests y los artefactos de gate como evidencia más fuerte que la prosa aspiracional o los nombres de directorio.
Caveats actuales
- El modelo más rico de handlers existe en el diseño, pero el soporte de ejecución sigue siendo desigual.
- El comportamiento depende del binario exacto de
souc, no solo de los archivos presentes en el repositorio.
Pruébalo en este repositorio
fn add(a: i32, b: i32) -> i32 {
a + b
}
fn log(msg: string) with IO {
println(msg)
}