Mineres-Compilador
Documentacao oficial do projeto, com foco em organizacao comercial, clareza tecnica e evolucao incremental.
Visao Geral
| Objetivo | Construir um compilador da linguagem Mineres com arquitetura limpa e padrao profissional. |
| Etapa Atual | Implementacao da camada de aplicacao e CLI. |
| Proxima Etapa | Criar CLI funcional com servico de analise lexica e suporte a saida JSON/texto. |
Painel de Progresso
Progresso Global
65% concluido
Progresso por Fase
| Fase | Progresso | Status |
|---|---|---|
| Fundacao | 90% | Quase completa |
| Nucleo Lexico | 85% | Quase completa |
| Aplicacao e CLI | 0% | Nao iniciado |
| Qualidade e Governanca | 20% | Em andamento |
| Release Inicial | 0% | Nao iniciado |
Mapa Rapido
| Documento | Finalidade |
|---|---|
| Estado Atual | O que foi feito, o que falta e riscos |
| Arquitetura Alvo | Estrutura por camadas e principios de projeto |
| Roadmap de Entrega | Plano por fases com checklists |
| Documentacao Temporaria | Registro de mudancas pequenas e incrementais |
| ADR 0001 | Decisao da estrutura inicial |
Snapshot do Projeto
Ja concluido
- Estrutura base de pastas para crescimento organizado.
- Modelo de token imutavel em
mineires_token.py. - Catalogo de token types e mapas lexicos em
tokentype.py. - Automato (AFD) implementado e validado em
src/mineres_compilador/automato.py. - Lexer implementado com rastreamento de linha/coluna em
src/mineres_compilador/lexer.py. - Validacoes locais de automato e lexer realizadas durante a implementacao.
- Documentacao tecnica e tutoriais criados em docs.
Em aberto
- Definir contrato final de erro lexico (excecao vs token de erro).
- Garantir emissao de token
EOFconsistente. - Criar
application/lexical_analysis_service.py. - Criar CLI (
main.py) com suporte a--input,--output,--format. - Configurar lint, format, type checking e CI/CD.
Como usar esta documentacao
- Comece por Estado Atual para entender a situacao real.
- Leia Arquitetura Alvo para alinhar decisoes tecnicas.
- Execute o Roadmap de Entrega fase por fase.
- Registre novas decisoes em docs/decisions usando o formato ADR.
Atualizacao de Progresso
Ao final de cada entrega:
- Atualize a porcentagem global nesta pagina.
- Ajuste a tabela de progresso por fase.
- Marque os itens concluidos em roadmap.md.
- Atualize status.md com fatos tecnicos e riscos.
- Registre mudancas pequenas em temporary-updates.md.
- Quando a mudanca for consolidada, promova para status.md, architecture.md, roadmap.md ou ADR.