Compiladores/Pautas 2022-2023/Pauta do Projecto: Entrega Intermédia

From Wiki**3

AVISOS - Avaliação em Época Normal

Esclarecimento de dúvidas:

  • Consultar sempre o corpo docente atempadamente: presencialmente ou através do endereço oficial da disciplina [1].
  • Não utilizar fontes de informação não oficialmente associadas ao corpo docente (podem colocar em causa a aprovação à disciplina).
  • Não são aceites justificações para violações destes conselhos: quaisquer consequências nefastas são da responsabilidade do aluno.

Requisitos para desenvolvimento, material de apoio e actualizações do enunciado (ver informação completa em Projecto de Compiladores):

  • O material de apoio é de uso obrigatório e não pode ser alterado.
  • Verificar atempadamente (mínimo de 48 horas antes do final de cada prazo) os requisitos exigidos pelo processo de desenvolvimento.

Processo de avaliação (ver informação completa em Avaliação do Projecto):

  • Datas: 2023/05/15 17:00 (inicial); 2023/05/30 17:00 (intercalar); 2023/06/16 17:00 (final); 2023/06/16-19 (teste prático).
  • Todas as entregas são cruciais para o bom desenvolvimento do projecto, sendo obrigatórias: a não realização de uma entrega implica a exclusão da avaliação do projecto e, por consequência, da avaliação da disciplina.
  • Verificar atempadamente (até 48 horas antes do final de cada prazo) os requisitos exigidos pelo processo de avaliação, incluindo a capacidade de acesso ao repositório.
  • Apenas se consideram para avaliação os projectos existentes no repositório oficial. Apenas se considera para avaliação o ramo 'master'.
  • Trabalhos não presentes no repositório no final do prazo têm classificação 0 (zero) (não são aceites outras formas de entrega). Não são admitidas justificações para atrasos em sincronizações do repositório. A indisponibilidade temporária do repositório, desde que inferior a 24 horas, não justifica atrasos na submissão de um trabalho.
  • A avaliação do projecto pressupõe o compromisso de honra de que o trabalho correspondente foi realizado pelos alunos correspondentes ao grupo de avaliação.
  • Fraudes na execução do projecto terão como resultado a exclusão dos alunos implicados do processo de avaliação em curso.
Material de Uso Obrigatório
As bibliotecas CDK e RTS de apoio ao desenvolvimento do projecto são de uso obrigatório:
A máquina virtual, fornecida para desenvolvimento do projecto, já contém todo o material de apoio.
Uso Obrigatório: Repositório GIT
Apenas se consideram para avaliação os projectos existentes no repositório GIT oficial. Apenas se considera para avaliação o ramo main.

Trabalhos não presentes no repositório no final do prazo têm classificação 0 (zero) (não são aceites outras formas de entrega). Não são admitidas justificações para atrasos em sincronizações do repositório. A indisponibilidade temporária do repositório, desde que inferior a 24 horas, não justifica atrasos na submissão de um trabalho.

Prazo de Revisão

  • ids - problems com identificadores
  • int - problemas com inteiros (definições incompletas ou excessivas)
  • keywords - problemas com palavras-chave (a mais ou a menos)
  • (bad) patterns - problemas genéricos com escrita de padrões lexicais
  • string - problemas na definição de strings (composição, concatenação indevida, etc.)
  • [outros] - casos específicos (contactar professor responsável)

|}

Problemas na análise sintáctica
  • conflicts - conflitos no analisador LALR(1) (não avaliado nesta entrega)
  • decls - problemas nas declarações (e.g. mistura com expressões ou com instruções)
  • empty rules - regras sem semântica associada
  • exprs - problemas nas expressões (em falta ou com inclusão de casos errados)
  • calls - problemas nas chamadas a funções (e.g. não estão definidos como expressões)
  • funcs - problemas (vários) nas definições de funções
  • lvals - problemas na definição de left-values (e.g. ausência de definições ou incompletas)
  • precs - problemas na definição de precedências (tipicamente, em excesso, deficientes, ou sem correspondência com o manual)
  • precs* - problemas graves na definição de precedências (tipicamente, em excesso, deficientes, ou sem correspondência com o manual)
  • tokens - problemas na definição de tokens (tipicamente, em excesso ou sem correspondência com o manual)
  • read - problemas na definição da expressão de leitura (verificar manual de referência)
  • semantics - problemas na definição de acções semânticas
  • (simple) - contém apenas a definição original (linguagem Simple)
  • strings - problemas na definção de cadeias de caracteres
  • syntax - problemas na definição da gramática ou na semântica (nó) correspondente (verificar manual de referência)
  • start - problemas na definição da raiz da árvore sintáctica (compiler->ast(...))
  • [outras anotações] - casos específicos (contactar professor responsável)
Problemas na análise semântica e na geração de código (nós e XML)

Nos nós:

  • [outros nós] - nós com problemas (nós excedentários ou em falta ou com problemas na definição)
  • [outras anotações] - casos específicos (contactar professor responsável)

No visitor xml_writer:

  • ast - o método "ast" do compilador não foi chamado no parser (.y), pelo que a AST está indefinida
  • empty - métodos vazios ou funcionalmente vazios
  • (incomp) - código incompleto
  • [outras anotações] - casos específicos (contactar professor responsável)

Pauta

Aqui: (ver Fénix)