Pular para conteúdo

Ponto de Controle 2

Formulário

Nome da equipe

Grupo 7

Nomes dos integrantes e respectivas matrículas

  • Maria Alice Bernardo Costa - 211063210
  • Luis Eduardo Carneiro Miranda - 211063200
  • Milena Baruc Rodrigues Morais - 211062339
  • Nicolas Bomfim Dias Bandeira - 211062348
  • Gabriel Saraiva Canabrava - 202045769
  • Pablo Santos Costa - 180128817

Linguagem escolhida para tratamento pelo compilador/interpretador:

C++

Tipo do projeto

Interpretador

Metodologia adotada para o planejamento

Scrum

Número de sprints realizadas até o momento

4

Objetivos planejados para as sprints já concluídas

  • Criação de um makefile
  • Implementação da Tabela de Simbolos
  • Implementação da Árvore de Sintaxe Abstrata

Principais entregas já implementadas no projeto

  • Definição da linguagem-fonte (sintaxe/semântica básica)
  • Análise léxica com Flex
  • Início da análise sintática com Bison
  • Casos de testes simples com tokens e regras básicas

Principais dificuldades enfrentadas e como foram resolvidas

  • Durante a construção da AST, tivemos dificuldade para debugar o código, o que atrasou uma sprint. Após tentativas e pesquisas sem sucesso, pedimos ajuda ao professor, que encontrou o problema e nos ajudou a seguir com o projeto.

O que ainda falta implementar até a próxima entrega?

  • Finalizar a AST para suportar todos os tipos de nós, incluir execução de if, while e funções, exibir erros semânticos detalhados e realizar testes mais amplos para ajustes e otimizações.

https://github.com/Maliz30/Interpretador_Cpp

O repositório está atualizado com os últimos commits?

Parcialmente (Explicar abaixo)

Comentários adicionais sobre o repositório

Como a AST ainda está em desenvolvimento e não se encontra totalmente estável, optamos por mantê-la em uma branch separada: (https://github.com/Maliz30/Interpretador_Cpp/tree/AST). Além disso, nossa sprint atual (Sprint 4: 15/05 a 04/06) ainda está em andamento, portanto, novos commits ainda serão realizados nos próximos dias para incluir os entregáveis planejados. Dentre os entregáveis da sprint 4 que serão integrados ao repositório estão a finalização da função recursiva da AST, fluxos de controle e a verificação semântica de variáveis, tipos e chamadas de funções.

O código já implementa as seguintes partes do compilador/interpretador?

  • Analisador léxico
  • Analisador sintático
  • Analisador semântico
  • AST e tabela de símbolos

O código já foi testado?

Parcialmente (Explicar abaixo)

Casos de teste implementados

Testes iniciais focaram em reconhecimento de tokens e regras sintáticas básicas. Incluímos casos para: exibição "Hello World", estruturas condicionais (if/else), laços de repetição (for/while) e operações aritméticas com entrada/saída de dados.

Principais melhorias técnicas implementadas desde o último checkpoint

Desde o último checkpoint, implementamos a criação de um Makefile, a Tabela de Símbolos, e iniciamos a implementação da Árvore de Sintaxe Abstrata (AST). Também aprimoramos a análise sintática com Bison.

Resumo objetivo do progresso da equipe

Entre os pontos de controle 1 e 2, enfrentamos atrasos no desenvolvimento do interpretador, mas solucionamos os problemas e replanejamos as atividades para seguir o cronograma e garantir a entrega final com folga no prazo.

Quais os principais pontos que desejam destacar na apresentação?

Desde o último checkpoint, implementamos a criação de um Makefile, a Tabela de Símbolos, e iniciamos a implementação da Árvore de Sintaxe Abstrata (AST). Também aprimoramos a análise sintática com Bison.

Histórico de versões

Versão Data Descrição Autor(es) Revisor(es)
1.0 26/06/2025 Documentação do Ponto de Controle 2 Milena Baruc Maria Alice e Luis Miranda