CLI
Os treze comandos do dataforge e suas opções.
Os comandos#
| Comando | O que faz |
|---|---|
| `run` | executa um programa |
| `check` | análise estática: nomes, aridade, tipos |
| `test` | descobre e roda os testes |
| `fmt` | formata o código |
| `lint` | aponta problemas de estilo |
| `doc` | gera documentação Markdown |
| `init` | cria um projeto novo |
| `repl` | console interativo |
info | mostra o manifesto do projeto |
new | cria a partir de um template |
tokens | mostra o fluxo de tokens (lexer) |
ast | mostra a árvore sintática (parser) |
version | mostra a versão |
df é um atalho para dataforge — os dois são o mesmo programa.
As flags#
| Flag | Efeito |
|---|---|
--time | mostra o tempo de execução |
--debug | imprime tokens, AST e o traceback completo |
--no-color | desliga as cores (útil em CI e logs) |
--check | fmt: só verifica, não reescreve |
--strict | check/lint: trata avisos como erros |
--verbose, -v | test: mostra cada caso |
--filter=<texto> | test: só os casos cujo nome contém o texto |
--fail-fast | test: para na primeira falha |
--out=<arquivo> | doc: escreve num arquivo |
--syntax-only | check: pula a análise semântica |
O ciclo de trabalho#
bash
dataforge init meu-app # começar
cd meu-app
dataforge check src/ # nomes, tipos, aridade
dataforge lint src/ # estilo e higiene
dataforge fmt src/ # formatar
dataforge test tests/ -v # testes
dataforge doc src/ --out=doc/API.md
dataforge run # executarEm integração contínua#
bash
dataforge fmt . --check && dataforge check . && dataforge testCada comando sai com código diferente de zero em caso de falha, então o && interrompe na primeira etapa que quebrar.
Depurar#
bash
dataforge tokens arquivo.df # o que o lexer viu
dataforge ast arquivo.df # o que o parser montou
dataforge run arquivo.df --debugÚteis quando o programa não faz o que você espera e a suspeita é de que o código está sendo lido de outro jeito — a ambiguidade do // é o caso clássico.