Compiladores/Pautas 2017-2018/Pauta do Projecto: Entrega Intermédia
From Wiki**3
< Compiladores | Pautas 2017-2018
| AVISOS - Avaliação em Época Normal |
|---|
|
Esclarecimento de dúvidas:
|
|
Requisitos para desenvolvimento, material de apoio e actualizações do enunciado (ver informação completa em Projecto de Compiladores):
|
|
Processo de avaliação (ver informação completa em Avaliação do Projecto):
|
| 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 CVS |
| Apenas se consideram para avaliação os projectos existentes no repositório CVS oficial.
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
PAUTA EM ACTUALIZAÇÃO
A entrega intermédia pode ser revista até à data da entrega final do projecto.
Critérios de Avaliação
LER COM ATENÇÃO
A entrega intermédia vale 6 valores em 20.
A avaliação é realizada sobre a versão existente no CVS no final do prazo para a entrega intermédia. Projectos que não apresentem alterações relativamente ao conteúdo inicial do repositório CVS ou relativamente à entrega inicial não serão considerados.
A avaliação da entrega intermédia considera a execução de intervenções em várias regiões do código do compilador em desenvolvimento, assim como a gestão do projecto correspondente.
Advertem-se os alunos sobre a consulta de colegas de anos anteriores. Estas consultas podem ser positivas, mas comportam algum risco, pois o processo e critérios de avaliação podem ter mudado. Além disso, a proficiência do colega pode majorar negativamente o resultado da avaliação em curso. Não são admitidas quaisquer justificações com base na história da disciplina.
Estas condições são aplicáveis à data da entrega intermédia.
Em caso de dúvidas suscitadas por qualquer elemento neste texto, no projecto, ou na disciplina em geral, os alunos são fortemente encorajados a consultar o corpo docente.
| VALORAÇÕES |
|---|
|
Existem 6 valores (dos 20 disponíveis para o projecto) associados a esta entrega:
Se o projecto compilar, poderão ser atribuídos mais 5 valores (desenvolvimento do compilador), distribuídos como se segue:
|
| PENALIZAÇÕES |
|---|
|
Existem penalizações relativas à (deficiente) execução do projecto. São considerados os seguintes aspectos preliminares:
Considerando os aspectos 1. a 6., são aplicadas as seguintes penalizações:
Não definição dos nós para regras BYACC em avaliação (ver acima) ou não utilização de nós definidos para a escrita dessas acções: 2 valores
|
DEBUG
O despiste de problemas em especificações Flex pode ser realizado de forma simples utilizando os métodos descritos em How to Debug a Flex Specification.
O visitor xml_writer foi concebido para produzir uma representação textual hierárquica (árvore XML) correspondente ao programa em compilação. É muito útil para inspeccionar a contrução da árvore de nós por parte do BYACC, permitindo, inclusivamente, a apresentação gráfica.
Legenda
As questões relativas às colunas "Problemas" devem ser resolvidas quanto antes (nos horários de dúvidas ou, sendo possível, por correio electrónico).
| Problemas na análise lexical |
|---|
|
| Problemas na análise sintáctica |
|---|
|
| Problemas na análise semântica e na geração de código (nós e XML) |
|---|
|
Nos nós:
No visitor xml_writer:
|
Pauta
EM ACTUALIZAÇÃO
<runphp> echo<<<___EOT___
<colgroup width="70"></colgroup> <colgroup span="2" width="43"></colgroup> <colgroup width="37"></colgroup> <colgroup width="62"></colgroup> <colgroup width="37"></colgroup> <colgroup width="69"></colgroup> <colgroup width="37"></colgroup> <colgroup span="3" width="69"></colgroup> <colgroup width="38"></colgroup> <colgroup span="3" width="71"></colgroup> <colgroup width="38"></colgroup> <colgroup width="125"></colgroup> <colgroup width="38"></colgroup> <colgroup width="85"></colgroup> <colgroup width="82"></colgroup> <tbody> </tbody>| Nota | Total | CVS | Compilação <a href="https://goo.gl/8VkE5k">https://goo.gl/8VkE5k</a> |
Análise Lexical | Análise Sintáctica | Nós | Semântica | OBS. | |||||||||||
| Número | 6.00 | 6.00 | 0.50 | Problemas | 0.50 | Problemas | 1.50 | Problemas | (a mais) | (a menos) | 1.00 | Problemas | (a mais) | (a menos) | 1.00 | Problemas | 1.50 | Problemas | |
| 001 | 1.25 | 1.25 | 1.00 | 0.00 | (corrigido) | 0.50 | doubles, strings | ops | indent | conflicts | |||||||||
| 002 | 1.38 | 1.38 | 1.00 | 1.00 | 0.25 | strings, doubles, ints | function patterns | indent | conflicts | ||||||||||
| 003 | 2.13 | 2.13 | 1.00 | 1.00 | 0.75 | \0, string ignore | conflicts | ||||||||||||
| 004 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | keywords, doubles, strings | string special, indent | conflicts | |||||||||||
| 005 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | strings, doubles, ints | ops, comments | string special | |||||||||||
| 006 | 1.38 | 1.38 | 1.00 | 1.00 | 0.25 | strings, ints, idents | ops, keywords, covfefe | doubles, indent | conflicts | ||||||||||
| 007 | 1.38 | 1.38 | 1.00 | 1.00 | 0.25 | strings, ints, idents, etc, (simple) | ops, keywords | indent, doubles, comments | conflicts | ||||||||||
| 008 | |||||||||||||||||||
| 009 | 2.50 | 2.50 | 1.00 | 1.00 | 1.00 | strings | |||||||||||||
| 010 | 2.13 | 2.13 | 1.00 | 1.00 | 0.75 | doubles, strings | conflicts | ||||||||||||
| 011 | 2.13 | 2.13 | 1.00 | 1.00 | 0.75 | doubles, strings, idents | \0, string ignore | conflicts | |||||||||||
| 012 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | strings, .* | \0, string ignore, strings special | conflicts | |||||||||||
| 013 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | strings | keywords, tCONTINUE, covfefe, \0, string ignore | ||||||||||||
| 014 | 2.13 | 2.13 | 1.00 | 1.00 | 0.75 | elsif patterns, \0 | |||||||||||||
| 015 | 2.13 | 2.13 | 1.00 | 1.00 | 0.75 | doubles, strings, idents | \0 | ||||||||||||
| 016 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | doubles, strings, ints, idents | \0, string ignore | conflicts | |||||||||||
| 017 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | doubles, strings | keywords, comments, string concat | idents, string specials | conflicts | ||||||||||
| 018 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | doubles | tNILL, \0, string ignore | conflicts | |||||||||||
| 019 | 2.13 | 2.13 | 1.00 | 1.00 | 0.75 | comments, ..., strings | string concat, \0, string ignore | conflicts | |||||||||||
| 020 | 1.38 | 1.38 | 1.00 | 1.00 | 0.25 | strings, ints | ops | doubles, indent, string specials, ints | |||||||||||
| 021 | 2.13 | 2.13 | 1.00 | 1.00 | 0.75 | idents | \0, string ignore, \\ | ||||||||||||
| 022 | 1.75 | 1.75 | 1.00 | 1.00 | 0.50 | strings, ints, indent | ops | ||||||||||||
| 023 | NA | sem entrega intermédia | |||||||||||||||||
| 024 | 2.50 | 2.50 | 1.00 | 1.00 | 1.00 | conflicts | |||||||||||||
| 025 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 026 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 027 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 028 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 029 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 030 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 031 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 032 | 0.50 | 0.50 | 1.00 | 0.00 | (corrigido) | conflicts | |||||||||||||
| 033 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 034 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 035 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 036 | 0.50 | 0.50 | 1.00 | 0.00 | (corrigido) | ops, keywords | |||||||||||||
| 037 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 038 | |||||||||||||||||||
| 039 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 040 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 041 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | ||||||||||||||
| 042 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 043 | |||||||||||||||||||
| 044 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 045 | 1.00 | 1.00 | 1.00 | 1.00 | ops | ||||||||||||||
| 046 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 047 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 048 | 1.00 | 1.00 | 1.00 | 1.00 | ops, covfefe | conflicts | |||||||||||||
| 049 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 050 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 051 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | conflicts | |||||||||||||
| 052 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | conflicts | |||||||||||||
| 053 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 054 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 055 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 056 | 1.00 | 1.00 | 1.00 | 1.00 | macro | keywords | conflicts | scanner.h | |||||||||||
| 057 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | ||||||||||||||
| 058 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 059 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 060 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 061 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 062 | NA | sem entrega intermédia | |||||||||||||||||
| 063 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 064 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 065 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 066 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 067 | 1.00 | 1.00 | 1.00 | 1.00 | covfefe | conflicts | |||||||||||||
| 068 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 069 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 070 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 071 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 072 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 073 | 1.00 | 1.00 | 1.00 | errors.txt | 1.00 | ops, keywords | conflicts | ||||||||||||
| 074 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 075 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 076 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 077 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 078 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 079 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 080 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 081 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 082 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 083 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 084 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 085 | |||||||||||||||||||
| 086 | NA | sem entrega intermédia | |||||||||||||||||
| 087 | 1.00 | 1.00 | 1.00 | 1.00 | covfefe | conflicts | |||||||||||||
| 088 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 089 | 0.50 | 0.50 | 1.00 | .project | 0.00 | não compila | conflicts | ||||||||||||
| 090 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 091 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 092 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 093 | NA | sem entrega intermédia | |||||||||||||||||
| 094 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 095 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 096 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 097 | NA | sem entrega intermédia | |||||||||||||||||
| 098 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 099 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 100 | |||||||||||||||||||
| 101 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 102 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 103 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 104 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 105 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | ||||||||||||||
| 106 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 107 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | ||||||||||||||
| 108 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 109 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | indent | conflicts | ||||||||||||
| 110 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 111 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 112 | |||||||||||||||||||
| 113 | NA | sem entrega intermédia | |||||||||||||||||
| 114 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 115 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 116 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 117 | 0.50 | 0.50 | 1.00 | 0.00 | (corrigido) | ops | conflicts | ||||||||||||
| 118 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | conflicts | |||||||||||||
| 119 | 0.50 | 0.50 | 1.00 | 0.00 | não compila | ops, keywords | |||||||||||||
| 120 | |||||||||||||||||||
| 121 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 122 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 123 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 124 | |||||||||||||||||||
| 125 | 1.00 | 1.00 | 1.00 | 1.00 | ops | ||||||||||||||
| 126 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 127 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 128 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 129 | 0.50 | 0.50 | 1.00 | 0.00 | (corrigido) | ops | conflicts | ||||||||||||
| 130 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 131 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 132 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 133 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | conflicts | |||||||||||||
| 134 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | conflicts | |||||||||||||
| 135 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords, covfefe | conflicts | |||||||||||||
| 136 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 137 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 138 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 139 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | conflicts | |||||||||||||
| 140 | 1.00 | 1.00 | 1.00 | 1.00 | ops, keywords | conflicts | |||||||||||||
| 141 | |||||||||||||||||||
| 142 | 1.00 | 1.00 | 1.00 | 1.00 | keywords | conflicts | |||||||||||||
| 143 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 144 | 0.50 | 0.50 | 1.00 | 0.00 | não compila | (simple) | (simple) | (simple) | |||||||||||
| 145 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 146 | 1.00 | 1.00 | 1.00 | 1.00 | 0.00 | (simple) | (simple) | (simple) | |||||||||||
| 147 | NA | sem entrega intermédia | |||||||||||||||||
| 148 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 149 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 150 | 0.50 | 0.50 | 1.00 | 0.00 | (corrigido) | conflicts | |||||||||||||
| 151 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 152 | NA | sem entrega intermédia | |||||||||||||||||
| 153 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 154 | 1.00 | 1.00 | 1.00 | .directory | 1.00 | conflicts | |||||||||||||
| 155 | 1.00 | 1.00 | 1.00 | 1.00 | |||||||||||||||
| 156 | |||||||||||||||||||
| 157 | 1.00 | 1.00 | 1.00 | 1.00 | conflicts | ||||||||||||||
| 158 | |||||||||||||||||||
| 159 | |||||||||||||||||||
| 160 | |||||||||||||||||||
| 161 | 1.00 | 1.00 | 1.00 | 1.00 | ops | conflicts | |||||||||||||
| 162 | |||||||||||||||||||
___EOT___; </runphp>