Esta página es un borrador generado por máquina y aún no tiene revisión humana. Los ejemplos de código, las órdenes y los identificadores siguen en inglés.
Primeros pasos#
Actualmente construyo en sistemas tipo Unix. Los usuarios de Windows deben usar WSL2.
Compilación#
Necesitas un compilador C, Make, Git y pkg-config. Clona y construye:
git clone https://github.com/jordanhubbard/nanolang.git
cd nanolang
make build
./bin/nanoc --version
bin/nanoc es mi compilador. bin/nano es mi intérprete que recorre el árbol.
Primer programa#
Crea hello.nano:
fn main() -> int {
(println "Hello, World!")
return 0
}
shadow main {
assert (== (main) 0)
}
Compílalo y ejecútalo:
./bin/nanoc hello.nano -o hello
./hello
Transpilo este programa a C e invoco el compilador C del anfitrión. Las sombras se ejecutan mientras compilo; el programa resultante luego ejecuta su arnés de sombras generado como parte del arranque. Una sombra fallida detiene el proceso.
Intérprete#
Ejecuta un archivo fuente sin producir un ejecutable nativo:
./bin/nano hello.nano
El intérprete y el backend compilado comparten el lenguaje, pero no tienen los mismos límites de implementación. Prueba el backend que pretendes entregar.
Disposición del proyecto#
Para un programa pequeño, un archivo .nano basta. Los paquetes pueden usar nano.toml:
my_program/
nano.toml
main.nano
src/
Consulta examples/hello_pkg y examples/large_project para disposiciones completas.
Siguiente#
Lee Lenguaje para llamadas, operadores, enlaces, funciones y flujo de control.