Objetivos do Projeto
Desenvolver um compilador acadêmico capaz de traduzir programas escritos em um subconjunto da linguagem C para a linguagem Python, aplicando na prática os principais conceitos relacionados à construção de compiladores.
Objetivo Geral
Construir um sistema capaz de executar as principais etapas do processo de compilação, desde a análise do código-fonte até a geração de código equivalente em outra linguagem de programação.
Objetivos Específicos
| Categoria | Objetivo |
|---|---|
| Análise Léxica | Implementar um analisador léxico responsável pelo reconhecimento e classificação de tokens da linguagem C |
| Análise Sintática | Desenvolver um analisador sintático baseado em gramática formal para validação estrutural do programa |
| Análise Semântica | Realizar verificações semânticas relacionadas a tipos, escopo e consistência das declarações |
| Geração de Código | Traduzir estruturas válidas da linguagem C para código equivalente em Python |
| Tratamento de Erros | Identificar e reportar erros léxicos, sintáticos e semânticos durante a compilação |
| Testes | Validar o funcionamento do compilador através de casos de teste automatizados |
Objetivos Acadêmicos
- Consolidar os conhecimentos teóricos da disciplina de Compiladores
- Aplicar técnicas de análise e processamento de linguagens
- Desenvolver experiência prática com ferramentas como Flex e Bison
- Exercitar conceitos de arquitetura de software e modularização
- Fortalecer habilidades de desenvolvimento colaborativo em equipe
Resultados Esperados
Ao final do projeto, espera-se obter:
- Um compilador funcional para um subconjunto da linguagem C
- Tradução correta de estruturas básicas de C para Python
- Estrutura modular e extensível para evolução futura do compilador
- Documentação técnica clara e organizada
- Casos de teste para validação das funcionalidades implementadas
- Aplicação prática dos conceitos fundamentais de compiladores
Fluxo Esperado do Sistema
Código em C
↓
Análise Léxica
↓
Análise Sintática
↓
Análise Semântica
↓
Geração de Código
↓
Código em Python
Histórico de Versões
| Versão | Data | Descrição | Autor(es) |
|---|---|---|---|
1.0 |
07/04/2026 | Criação do documento | Beatriz Lins |
1.1 |
09/04/2026 | Refatoração do texto e melhorias estruturais | Arthur Fernandes |