Primeros Pasos
Instala el compilador, ejecuta tu primer programa .sio y aprende lo básico.
Primeros Pasos
Los programas de Sounio son archivos .sio que se verifican, ejecutan o compilan con souc. Esta guía es el punto de entrada práctico para el flujo público actual: parte del artefacto de compilador versionado, valida con souc check, y trata los gates y fixtures del repositorio como la fuente de verdad de lo que realmente funciona hoy.
Verificado hoy
- El lanzador canónico verificado en
$(pwd)/bin/souces el punto de entrada documentado más seguro. - En este proyecto aparecen dos números de versión que nombran cosas distintas: 2.1.0 es la release del lenguaje (badge del README,
CITATION.cff,CHANGELOG.md), ybin/souc --versionimprime la versión de la toolchain (por ejemplo3.0.0-rc.1 (madaros <build>), motor por defecto Madaros). Las antiguas cadenas de versión beta anteriores a 2.0 están retiradas. - Stdlib de extremo a extremo: 196 de 533 programas de prueba pasan (165 fallan, 172 omitidos), medido el 2026-10-06 con
bash scripts/stdlib/run_stdlib_e2e.sh; resultado enartifacts/stdlib/stdlib_e2e_result.v1.json. - El compilador solo tiene como objetivo Linux x86-64 y emite ELF estático. El Cranelift JIT ya no se distribuye (CHANGELOG 2.1.0).
souc build --backend gpuemite PTX para un esqueleto de patrones de kernel con nombre, no un backend GPU general, y el backend WASM es un borrador bloqueado (#2237). Ver TOUR.md §6. - Apunta
SOUNIO_STDLIB_PATHal árbol versionadostdlib/. - Prefiere
souc checkantes derunobuild.
Caveats actuales
- El comportamiento depende del binario exacto de
souc, no solo de los archivos presentes en el repositorio. - Un build Cargo en la raíz ya no es la mejor historia inicial para la documentación pública.
Pruébalo en este repositorio
export SOUC_BIN="$(pwd)/bin/souc"
export SOUNIO_STDLIB_PATH="$(pwd)/stdlib"
"$SOUC_BIN" --version
"$SOUC_BIN" check examples/hello.sio
# The three science fixtures below were not re-run on 2026-10-15.
# "$SOUC_BIN" check tests/run-pass/covid_2020_kernel.sio
# "$SOUC_BIN" check tests/run-pass/vancomycin_propagation.sio
# "$SOUC_BIN" check tests/compile-fail/vancomycin_low_conf.sio