Pular para o conteúdo

Guia 2 de 36

Primeiros Passos

Instale o conjunto de ferramentas, crie um projeto, desenvolva com acompanhamento automático e escolha um destino de compilação.

Nesta página

Zolo mantém o código-fonte acessível e deixa o projeto escolher onde ele roda. O mesmo programa pode executar na VM embarcada, integrar-se a hosts Lua 5.1, virar um binário nativo com LLVM ou Cranelift, ou ser entregue como WebAssembly.

Este guia vai de uma pasta vazia até um projeto real e o ciclo cotidiano de desenvolvimento.

Zolo ainda é pre-1.0. A linguagem já pode ser usada, mas as APIs continuam evoluindo. Mantenha a CLI e a documentação da mesma versão juntas.

Escolha por onde começar

  • Explorar sem instalar: abra o Playground e execute um exemplo no navegador.
  • Desenvolver localmente: instale a toolchain completa e crie um projeto pela CLI.
  • Aprender com programas completos: navegue pelo Zolo por Exemplos.

Instale o conjunto de ferramentas

O caminho recomendado é o pacote pré-compilado para o seu sistema. Ele inclui a CLI zolo, o servidor de linguagem, o debugger e o runtime:

Abrir a página de instalação

Confirme a instalação:

zolo version
zolo doctor

Compilar a partir do código-fonte continua disponível para quem contribui com o compilador:

cargo build --release

O binário estará em target/release/zolo (target/release/zolo.exe no Windows).

Rode seu primeiro programa Zolo

Crie hello.zolo:

const base = 2

/// Multiplica dois inteiros e retorna o resultado.
fn multiply(a: int, b: int) -> int {
    return a * b
}

let result = base |> multiply(2)
print("Olá do Zolo!")
print("2 * 2 = {result}")

Execute o arquivo diretamente — passar um .zolo é um atalho para zolo run:

zolo hello.zolo

Saída esperada:

Olá do Zolo!
2 * 2 = 4

Agora peça à mesma toolchain para verificar e formatar o código:

zolo check hello.zolo
zolo fmt hello.zolo

Crie um projeto

Use um template quando quiser criar uma nova pasta:

zolo new hello primeiro-zolo
cd primeiro-zolo
zolo .

Dentro de uma pasta existente, use zolo init meu-projeto. Os dois caminhos criam um zolo.toml, que registra o ponto de entrada e as configurações do compilador, formatter, testes e build.

zolo run, zolo build e zolo . descobrem automaticamente o ponto de entrada pelo zolo.toml, por src/main.zolo ou por main.zolo.

O ciclo cotidiano

Objetivo Comando
Executar novamente ao salvar zolo run --watch
Verificar tipos enquanto edita zolo check --watch
Reexecutar testes ao salvar zolo test main.zolo --watch
Formatar um arquivo zolo fmt main.zolo
Encontrar e corrigir problemas de lint zolo lint . --fix
Abrir o shell interativo zolo repl
Usar hot reload preservando o estado zolo dev main.zolo

Adicione um teste ao lado da função exercitada:

@test
fn multiply_works() {
    assert_eq(multiply(3, 4), 12)
}

Depois execute:

zolo test hello.zolo

Escolha o destino

O código-fonte permanece o mesmo; o comando escolhe a saída:

Destino Comando
VM embarcada zolo run hello.zolo
Código-fonte Lua 5.1 zolo compile hello.zolo
Bundle Lua único zolo bundle hello.zolo -o hello.lua
Binário nativo com LLVM zolo build hello.zolo
Binário nativo com Cranelift zolo build hello.zolo --emit native
WebAssembly para o navegador zolo build hello.zolo --emit wasm --host browser

Use zolo help para ver a superfície completa da CLI: cobertura, benchmarks, profiling, pacotes, documentação, templates, geração de código e completions do shell.

Forma do projeto

Um projeto pequeno começa com dois arquivos e cresce apenas quando precisa:

primeiro-zolo/
├── zolo.toml          # configuração do projeto e da toolchain
├── main.zolo          # ponto de entrada
├── src/               # módulos opcionais
├── tests/             # testes de integração opcionais
└── build.zolo         # configuração de build programável e opcional

Para onde seguir

DOCS / OPINIÃO

Esta página deixou alguma pergunta?

Conte onde a explicação perdeu você. A documentação também faz parte da experiência da linguagem.

Índice global

Encontre seu caminho pela Zolo

Experimente uma ideia

Comece por aqui

9 resultados

9 resultados

enespt-br