Guía 2 de 36
Primeros Pasos
Instala el conjunto de herramientas, crea un proyecto, desarrolla con seguimiento automático y elige un destino de compilación.
En esta página
Zolo mantiene el código fuente accesible y deja que el proyecto elija dónde ejecutarse. El mismo programa puede correr en la VM integrada, integrarse con hosts Lua 5.1, convertirse en un binario nativo mediante LLVM o Cranelift, o distribuirse como WebAssembly.
Esta guía va desde un directorio vacío hasta un proyecto real y el ciclo cotidiano de desarrollo.
Zolo todavía es pre-1.0. El lenguaje ya se puede usar, pero las APIs continúan evolucionando. Mantén juntos la CLI y la documentación de la misma versión.
Elige por dónde empezar¶
- Explorar sin instalar: abre el Playground y ejecuta un ejemplo en el navegador.
- Desarrollar localmente: instala la toolchain completa y crea un proyecto con la CLI.
- Aprender con programas completos: recorre Zolo por Ejemplos.
Instala el conjunto de herramientas¶
La opción recomendada es el paquete precompilado para tu sistema. Incluye la CLI zolo, el servidor de lenguaje, el debugger y el runtime:
Abrir la página de instalación
Comprueba la instalación:
zolo version
zolo doctorCompilar desde el código fuente sigue disponible para quienes contribuyen al compilador:
cargo build --releaseEl binario estará en target/release/zolo (target/release/zolo.exe en Windows).
Ejecuta tu primer programa Zolo¶
Crea hello.zolo:
const base = 2
/// Multiplica dos enteros y devuelve el resultado.
fn multiply(a: int, b: int) -> int {
return a * b
}
let result = base |> multiply(2)
print("¡Hola desde Zolo!")
print("2 * 2 = {result}")Ejecuta el archivo directamente — pasar un .zolo es un atajo para zolo run:
zolo hello.zoloSalida esperada:
¡Hola desde Zolo!
2 * 2 = 4Ahora pide a la misma toolchain que compruebe y formatee el código:
zolo check hello.zolo
zolo fmt hello.zoloCrea un proyecto¶
Usa una plantilla cuando quieras crear un directorio nuevo:
zolo new hello primer-zolo
cd primer-zolo
zolo .Dentro de un directorio existente, usa zolo init mi-proyecto. Ambos caminos crean un zolo.toml, que registra el punto de entrada y la configuración del compilador, formatter, pruebas y build.
zolo run, zolo build y zolo . descubren automáticamente el punto de entrada mediante zolo.toml, src/main.zolo o main.zolo.
El ciclo cotidiano¶
| Objetivo | Comando |
|---|---|
| Volver a ejecutar al guardar | zolo run --watch |
| Comprobar tipos mientras editas | zolo check --watch |
| Volver a ejecutar pruebas al guardar | zolo test main.zolo --watch |
| Formatear un archivo | zolo fmt main.zolo |
| Encontrar y corregir problemas de lint | zolo lint . --fix |
| Abrir el shell interactivo | zolo repl |
| Usar hot reload conservando el estado | zolo dev main.zolo |
Añade una prueba junto a la función que comprueba:
@test
fn multiply_works() {
assert_eq(multiply(3, 4), 12)
}Después ejecútala:
zolo test hello.zoloElige el destino¶
El código fuente no cambia; el comando elige la salida:
| Destino | Comando |
|---|---|
| VM integrada | zolo run hello.zolo |
| Código fuente Lua 5.1 | zolo compile hello.zolo |
| Bundle Lua único | zolo bundle hello.zolo -o hello.lua |
| Binario nativo con LLVM | zolo build hello.zolo |
| Binario nativo con Cranelift | zolo build hello.zolo --emit native |
| WebAssembly para el navegador | zolo build hello.zolo --emit wasm --host browser |
Usa zolo help para ver toda la superficie de la CLI: cobertura, benchmarks, profiling, paquetes, documentación, plantillas, generación de código y completions del shell.
Forma del proyecto¶
Un proyecto pequeño comienza con dos archivos y crece solo cuando hace falta:
primer-zolo/
├── zolo.toml # configuración del proyecto y la toolchain
├── main.zolo # punto de entrada
├── src/ # módulos opcionales
├── tests/ # pruebas de integración opcionales
└── build.zolo # configuración de build programable y opcionalPor dónde continuar¶
- Aprende el núcleo del lenguaje: Variables y Tipos, Funciones y Pattern Matching.
- Configura el editor, formatter y debugger: Herramientas.
- Construye un servicio: Servidor HTTP.
- Crea para la web con Verniz: Desarrollo Web.
DOCS / OPINIÓN
¿Esta página dejó alguna pregunta?
Cuéntanos dónde te perdió la explicación. La documentación también forma parte de la experiencia del lenguaje.