Compiladores/Pautas 2016-2017/Pauta do Projecto: Entrega Intermédia

From Wiki**3

< Compiladores‎ | Pautas 2016-2017
Revision as of 11:06, 9 May 2017 by Root (talk | contribs) (→‎Pauta)
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: 2017/03/24 17:00 (inicial); 2017/04/21 17:00 (intercalar); 2017/05/22 17:00 (final); 2017/05/22-2017/05/25 (teste prático).
  • A entrega inicial, sendo crucial para o projecto, é obrigatória e sua não realização 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 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.
  • 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 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:

  • gestão do projecto: 1 valor
    • projecto com a estrutura correcta no repositório CVS: 0.5 valores (i.e., código que não apresente a estrutura canónica de um compilador desenvolvido com a CDK é considerado sem a estrutura correcta -- consultar estas páginas sobre o desenvolvimento do projecto com base no repositório CVS)
    • projecto compila e produz compilador "xpl" ("xpl", com letras minúsculas: variações correspondem a "não compilação"): 0.5 valores

Se o projecto compilar, poderão ser atribuídos mais 5 valores (desenvolvimento do compilador), distribuídos como se segue:

  • Flex (completo): 1.5 valores
    • Tokens correspondentes aos símbolos e palavras chave (simples ajuste do Simple)
    • Identificadores (simples ajuste do Simple)
    • Inteiros (deve estar implementada a base 16 -- a base 10 já está implementada no Simple)
    • Reais (extensão dos inteiros)
    • Strings (extensão do Simple)
    • O Flex deve retornar os tokens ao byacc (sobre DEBUG, ver abaixo) -- o não retorno de tokens penaliza fortemente toda a componente Flex (ver penalizações)
  • BYACC (completo): 1 valor
    • Regras correspondentes a literais de reais e strings (simples extensão do Simple)
    • Regras correspondentes a ciclos, etc. (simples extensão e adaptação do Simple)
    • Regras correspondentes a declarações de variáveis
    • Regras correspondentes a declarações/definições de funções
    • As acções correspondentes às regras definidas no BYACC devem estar implementadas (simples criação de nós) -- a não implementação corresponde a penalizações (var abaixo)
  • Nós (nodes) (completo): 1 valor
    • Todos os nós necessários para a linguagem (utilizados na especificação BYACC e em passos subsequentes) devem ser criados
    • A não criação de nós motivada pela ausência de definição de acções no BYACC é penalizada (ver abaixo)
  • Semântica (visitors) (xml_writer completo; postfix_writer ver a seguir): 1.5 valores
    • O "visitor" xml_writer deve estar completamente implementado (ver também DEBUG abaixo)
    • O "visitor" type_checker deve ter todos os métodos (correspondentes aos nós, tal como o xml_writer), embora alguns possam estar ainda vazios (i.e., podem não executar qualquer acção)
    • O "visitor" postfix_writer deve ter todos os métodos (correspondentes aos nós, tal como o xml_writer), embora alguns possam estar ainda vazios (i.e., podem não executar qualquer acção)
    • Métodos correspondentes a acções semelhantes às existentes devem ser modelados nos existentes (mesmo que não modificados numa primeira instância)
    • A presença de implementações de semântica no postfix_writer (tabela de símbolos, validação de tipos, etc.) não é penalizada, mas não será avaliada nesta entrega
PENALIZAÇÕES

Existem penalizações relativas à (deficiente) execução do projecto.

São considerados os seguintes aspectos preliminares:

  1. A linguagem do projecto contém a linguagem Simple, pelo que não há razão para não utilizar completamente o compilador Simple, eventualmente com pequenas alterações.
  2. A semântica da linguagem do projecto contém a da linguagem Simple, pelo que a implementação de alguns aspectos da linguagem do projecto não requer qualquer reimplementação relativamente ao Simple.
  3. O compilador Simple foi fornecido completamente funcional, assim como a versão inicial do compilador do projecto no respositório CVS (igual ao Simple e apenas alterado para ter o nome apropriado).
  4. A criação de novos nós não apresenta quaisquer dificuldades (são classes muito simples)
  5. O código dos métodos do visitor xml_writer corresponde a uma simples impressão dos atributos dos nós, através de uma travessia da árvore que formam e que os contém.
  6. O compilador é obrigatoriamente desenvolvido em C++.

Considerando os aspectos 1. a 6., são aplicadas as seguintes penalizações:

  • Destruição de funcionalidade do compilador Simple sem substituição por funcionalidade equivalente do compilador do projecto: 4 valores

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

  • A utilização de funções e estruturas C, quando existem alternativas directas C++ (malloc em lugar de new, por exemplo; strcmp, etc. em lugar da classe std::string; e outras) terá uma penalização máxima de 1 valor
  • Não utilização de qualquer material obrigatório: 6 valores (e considera-se projecto não realizado)

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

RELATIVAMENTE A NÃO COMPILAR

Todos os problemas de compilação podem e devem ser resolvidos (perdendo-se 0.50 pontos, relativos à componente de compilação). O prazo para correcção é 6ª feira, 2017/04/28, 17:00. Até essa data, os testes diários têm de estar a compilar (o código em avaliação é sempre o entregue no prazo da entrega intermédia). Depois dessa data, considera-se fechada esta janela de oportunidade.

Os alunos são fortemente encorajados a compreender/verificar/corrigir os problemas reportados. Alunos cujo projecto não compile (e apenas esses), podem solicitar correcção de versão nova a partir do CVS (desconto aplicável). Não se considerarão outras alterações na avaliação intermédia.

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
  • .* - uso indevido do padrão
  • bases - problemas com bases (em falta)
  • chars - definição indevida (não existem na linguagem)
  • comments - problemas com comentários (em excesso ou em falta)
  • floats - problemas com vírgula flutuante (definições incompletas)
  • ids - problems com identificadores
  • ints - problemas com inteiros (definições incompletas ou excessivas)
  • keywords - problemas com palavras chave (a mais ou a menos)
  • negative literals - problemas com valores negativos (não existem)
  • ops - problemas com operadores e afins
  • patterns - problemas genéricos com escrita de padrões lexicais
  • strings - problemas na definição de strings (composição, concatenação indevida, etc.)
  • types - problemas com definição de tipos (e.g., uso do mesmo token dos literais)
  • [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)
  • funcalls - problemas nas chamadas a funções (e.g. não estão definidos como expressões)
  • funcs - problemas (vários) nas declarações/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 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)
  • [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:

  • lvals - problemas na definição ou uso de left-values
  • decls - problemas na definição de declarações/definições de funções/variáveis
  • read_node - uso de left-value no read_node (não é uma atribuição, pelo que não tem left-values); ou derivação de basic_node (mas deve ser uma expressão); ou derivação de unary_expression (mas não tem argumentos); ou remoção do nó
  • [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 methods - métodos vazios ou funcionalmente vazios
  • [outras anotações] - casos específicos (contactar professor responsável)

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 width="134"></colgroup> <colgroup width="38"></colgroup> <colgroup width="119"></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/oHBS3x">https://goo.gl/oHBS3x</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 1.00 Problemas 1.00 Problemas 1.50 Problemas
36897                              
44126                              
50724                              
52327                              
55428 NA sem entrega intermédia
58727 2.38 2.38 1.00   1.00   0.50 strdup, keywords, comments, ints, floats 0.25 syntax, bad root, precs, syntax, exprs, lvals   missing identity_node, missing null_node, missing block_node, alloc_node, lvals, address_of_node 0.25 empty keywords
62892 NA sem entrega intermédia
63572 2.38 2.38 1.00   1.00   0.50 ints, keywords, strings, missing floats 0.25 tokens, syntax, empty rules, precs, lvals, exprs, strings, etc.   read_node, block_node, alloc_node, address_of_node 0.25 empty  
63916                              
64722 NA sem entrega intermédia
64738 3.38 3.38 1.00   1.00   0.50 strings, keywords, floats, concat 0.50 conflicts, precs, syntax, exprs, semantics, strings   read_node 0.75 incomp  
67045                              
67056 3.75 3.75 1.00   1.00   0.75 keywords, floats 0.50 tokens, syntax, exprs   null_node, decls, funcs, funcall, lvals 0.75 incomp  
67075 NA sem entrega intermédia
68168 3.75 3.75 1.00   1.00   0.75 strings, floats 0.50 syntax, tokens (0, xpl)   program_node, missing null_node, includes 0.75 incomp  
68199 3.50 3.50 1.00   1.00   0.75 strings, floats 0.25 conflicts, precs, tokens, syntax, exprs, strings   alloc_node, address_of_node 0.75 ast  
69405 3.50 3.50 1.00   1.00   0.75 strings, keywords 0.25 precs, syntax, exprs, lvals, strings, (simple)   read_node, decls, funcs, funcall, lvals, alloc_node, address_of_node 0.75 ast  
69720 3.75 3.75 1.00   1.00   0.75 comments 0.50 conflicts, tokens, precs, syntax, literals, types   next_node 0.75 incomp  
69814 NA sem entrega intermédia
70012 3.75 3.75 1.00   1.00   0.75 strings, keywords, floats 0.50 conflicts, precs, syntax, ifs (sequence), strings     0.75 incomp  
70087 3.00 3.00 1.00   1.00   0.75 ints, keywords 0.50 precs, syntax, ifs, strings, lvals, exprs   includes, decls, funcs, vars, funcall, lvals 0.25 empty  
70315 4.00 4.00 1.00   1.00   0.75 keywords, comments, strings 0.75 conflicts, precs, lvals   includes, block_node 0.75 ast  
70652 4.38 4.38 1.00   1.00   0.75 comments, strings 0.75 precs   program_node, includes, missing identity_node, missing null_node, decls, funcs, vars, funcall, lvals 1.00    
70939                              
71003 1.75 1.75 0.75 ofiles 0.00 (cvs ok) 0.50 ints, keywords, comments, strings, floats 0.25 conflicts, tokens, syntax, precs, decls, exprs, lvals   read_node, program_node, address_of_node 0.25 empty memory_node
72619 3.38 3.38 1.00   1.00   0.50 comments, ints, file, patterns, keywords 0.50 conflicts, tokens, precs, types, syntax, ifs   next_node, stop_node, includes 0.75 incomp  
72843 1.88 1.88 1.00   0.00 (cvs ok) 0.25 (simple) 0.25 tokens, precs, rules, syntax, ifs, strings, lvals, exprs, etc.   read_node, next_node, stop_node, missing null_node 0.50 incomp  
72984                              
73046                              
73155 NA sem entrega intermédia
73311                              
73422 3.00 3.00 1.00   1.00   0.50 ints, keywords, comments, strings, floats 0.50 conflicts, precs, semantics, syntax, exprs, lvals   missing identity_node, block_node, alloc_node, missing address_of_node 0.50 empty, incomp  
73438 NA   eliminado por cópia
73507 2.50 2.50 1.00   1.00   0.25 ints, keywords, comments, strings, floats 0.00 (simple)   identity_node, alloc_node, address_of_node 0.75 ast  
73522 0.50 0.50 1.00   0.00 não compila   floats, strings, comments   precs   alloc_node, dups, address_of_node   incomp  
73611 3.13 3.13 1.00   1.00   0.50 keywords, floats, strings, .* 0.25 conflicts, precs, syntax, exprs, empty rules, strings, concat, decls, etc.   includes, while_node, alloc_node 0.75 incomp  
73727 3.38 3.38 1.00   1.00   0.75 ints, keywords, comments, floats 0.50 conflicts, tokens, syntax, precs, exprs     0.50 empty, incomp  
73751 NA   eliminado por cópia
73861 1.75 1.75 1.00   1.00   0.00 (simple) 0.00 (simple)   read_node, return_node, identity_node, null_node, alloc_node, address_of_node 0.50 empty, incomp  
73974                              
75255 3.75 3.75 1.00   1.00   0.75 keywords, floats, strings 0.50 conflicts, precs, syntax, exprs, etc.     0.75 incomp  
75334 NA   eliminado por cópia
75455                              
75736 NA   eliminado por cópia
75788 3.38 3.38 1.00   1.00   0.50 keywords, floats, ints, strings 0.50 conflicts, tokens, precs, empty rules, ifs   next_node, stop_node, includes 0.75 incomp, evaluation_node identify_node
75805 3.75 3.75 1.00   1.00   0.75 floats 0.50 precs, ifs (sequence), types, syntax   if_node 0.75 empty  
75874 1.00 1.00 1.00   1.00   0.00 (simple) 0.00 (simple)   alloc_node, missing address_node 0.00 ast, empty  
75948 3.38 3.38 1.00   1.00   0.50 ints, keywords, comments, floats, strings 0.50 tokens, syntax, precs, lvals, ifs   next_node, includes 0.75 incomp, identity_node, etc.  
76062 1.63 1.63 1.00   1.00   0.25 (simple) 0.25 conflicts, precs, syntax, types, ifs, exprs, lvals, etc.   includes 0.00 empty  
76120 2.00 2.00 1.00   1.00   0.25 ints, keywords, comments, strings, floats 0.25 conflicts, tokens,, syntax, exprs, lvals, etc.   block_node 0.25 empty  
76175 3.38 3.38 1.00   1.00   0.50 ints, keywords, comments, floats 0.50 tokens, syntax, precs, strings, ifs, exprs   includes 0.75 incomp, function_node, identity_node  
76196 2.88 2.88 1.00   0.00 (cvs ok) 0.50 strings, keywords, floats 0.50 syntax, ifs (sequence), exprs, lvals, types   if_node 0.75 incomp keywords
76218 3.00 3.00 1.00   1.00   0.50 ints, keywords, comments, strings 0.50 conflicts, precs, types, syntax, ifs, lvals   program_node, null_node 0.50 empty, incomp  
76219 4.00 4.00 1.00   1.00   0.75 keywords, comments 0.75 conflicts, tokens, precs, types   includes, alloc_node 0.75 identity_node  
76273 3.63 3.63 1.00   1.00   0.50 fprintf, keywords, null, parselong, ints, floats 0.75 syntax, precs   program_node, missing identity_node, missing null_node 0.75 next, stop, alloc mem_node
76404 2.00 2.00 1.00   0.00 (cvs ok) 0.25 ints, keywords, comments, etc., (simple) 0.00 (simple)   read_node, identity_node, null_node, block_node, dups, arithops, alloc_node 0.75 ast  
76497 3.25 3.25 1.00   1.00   0.75 keywords, comments, floats 0.00 (simple)   includes 0.75 empty, incomp  
76588                              
77062 3.63 3.63 1.00   1.00   0.50 keywords, ints, floats 0.75 precs, ifs   includes, address_of_node 0.75 incomp  
78076 2.25 2.25 1.00   1.00   0.25 ints, keywords, comments, floats, strings 0.50 conflicts, tokens, precs, syntax, lvals   includes 0.25 empty identety_node
78117 3.63 3.63 1.00   1.00   0.50 keywords, comments, strings 0.75 tokens, precs, ifs, lvals     0.75 alloc  
78149 3.75 3.75 1.00   1.00   0.50 ints, keywords, strings, chars, ints 0.50 tokens, types, syntax, ifs     1.00    
78198 2.88 2.88 1.00   1.00   0.75 floats 0.75 conflicts, precs, lvals   read_node, alloc_node, address_of_node 0.00 empty  
78230                              
78271 3.00 3.00 1.00   1.00   0.50 ints, keywords, comments, strings 0.50 conflicts, tokens, syntax, precs, exprs, etc.   next_node, stop_node, null_node 0.50 empty, incomp  
78280 1.63 1.63 1.00   1.00   0.25 ints, keywords, comments, strings, tokens, floats 0.25 tokens, syntax, empty rules, etc. (simple)   program_node, read_node, missing identity_node, missing null_node, alloc_node, missing address_node 0.00 empty  
78302 3.00 3.00 1.00   1.00   0.25 ints, keywords, comments, floats, strings 0.50 tokens, precs, syntax, exprs, ifs, lvals   includes 0.75 alloc_node, incomp  
78304 4.00 4.00 1.00   1.00   0.75 keywords, comments 0.75 tokens, precs, lvals   includes 0.75 identity_node  
78307 4.38 4.38 1.00   1.00   0.75 floats 0.75 conflicts, precs, lvals     1.00    
78317 3.63 3.63 1.00   1.00   0.50 ints, keywords, strings, .*, concat, floats, ints 0.75 precs, funcs, lvals     0.75 incomp  
78445 3.75 3.75 1.00   1.00   0.75 keywords, strings 0.50 syntax, precs, types, ifs     0.75 incomp  
78457 2.63 2.63 1.00   1.00   0.50 ints, keywords, comments, floats, strings 0.50 conflicts, tokens, precs, ifs, exprs, types, syntax   read_node, identity_node, missing null_node, alloc_node, address_of_node, dups, arithops 0.25 empty  
78503 3.63 3.63 1.00   0.00 (cvs ok) 1.00   0.50 conflicts, syntax, ifs (sequence)     0.75 incomp  
78614 3.00 3.00 1.00   1.00   0.75 strings 0.50 conflicts, syntax, precs, types, exprs, lvals, ifs, etc.   includes 0.25 empty  
78674                              
78682 2.13 2.13 1.00   1.00   0.75 keywords 0.00 (simple)   includes, null_node, alloc_node 0.00 empty  
78688 2.38 2.38 1.00   1.00   0.50 ints, keywords, comments, strings, floats 0.25 conflicts, tokens, precs, syntax, idecls, ifs, exprs, literals, lvals   read_node, includes, identity_node, missing null_node, address_of_node, dups, arithops 0.25 empty  
78690 3.50 3.50 1.00   1.00   0.75 keywords, strings 0.25 conflicts, precs, syntax, ifs, exprs, lvals, types, etc.   includes, block_node 0.75 incomp memory_node
78742 2.00 2.00 1.00   1.00   0.50 ints, floats, comments, strings 0.25 conflicts, tokens, precs, empty rules, syntax, ifs, exprs, lvals, literals   null_node 0.00 empty  
78785 4.00 4.00 1.00   1.00   0.75 keywords, floats 0.75 precs, ifs     0.75 read_node  
78791                              
78876 3.38 3.38 1.00   1.00   0.75 floats 0.50 syntax, types, lvals, semantics   read_node, elsif nodes, address_of_node 0.50 empty, incomp  
78960 3.13 3.13 1.00   1.00   0.50 keywords, comments, strings, ints, floats 0.25 tokens, syntax, precs, ifs, delcs, exprs, lvals   read_node, null_node 0.75 funcs, read_node  
78973 3.75 3.75 1.00   1.00   0.50 Strings, .*, concat, floats 0.50 tokens, precs, ifs, strings, literals, delcs     1.00 nil_node  
78974 4.38 4.38 1.00   1.00   0.75 floats, strings 0.75 precs, ifs, exprs     1.00    
78982 3.75 3.75 1.00   1.00   0.75 keywords, comments, floats 0.50 conflicts, tokens, precs, types, ifs, exprs   includes 0.75 incomp  
79075 3.25 3.25 1.00   0.00 (cvs ok) 0.75 strings 0.50 precs, syntax, ifs, lvals   includes 0.75 incomp  
79114                              
79120 3.75 3.75 1.00   1.00   0.75 floats 0.50 precs, syntax, exprs, lvals, ifs (sequence)   includes, alloc_node 0.75 incomp null_node type
79175 4.00 4.00 1.00   1.00   0.75 strings 0.75 conflicts, syntax, literals     0.75 incomp  
79197 2.63 2.63 1.00   1.00   0.75 keywords, floats 0.50 conflicts, precs, literals, syntax, ifs, exprs, lvals   null_node 0.00 empty  
79210 3.75 3.75 1.00   1.00   0.75 ints, keywords, strings 0.50 conflicts, precs, syntax, ifs (sequence), literals, exprs, lvals   includes, missing identity node, null_node, alloc_node 0.75 incomp  
79457 2.38 2.38 1.00   1.00   0.50 ints, keywords, strings, comments 0.25 conflicts, tokens, syntax, bad root, etc. (simple)   read_node, missing identity_node, null_node, missing block_node, alloc_node, missing address_of_node 0.25 empty  
79601 3.38 3.38 1.00   1.00   0.50 keywords, floats, strings, .*, concat 0.50 conflicts, precs, ifs, literals, strings   includes 0.75 incomp keywords
79633 0.50 0.50 1.00   0.00 não compila   Ints, floats, keywords   (simple)   missing address_of_node   empty  
79674 1.75 1.75 1.00   0.00 (cvs ok) 0.50 ints, floats, keywords, comments, strings 0.50 conflicts, tokens, precs, syntax, ifs, lvals, exprs   read_node, missing null_node 0.00 (simple)  
79679 3.75 3.75 1.00   1.00   0.75 keywords, comments, floats 0.50 conflicts, tokens, precs, syntax, strings   dups, arithops 0.75 identity_node  
79690                              
79702 3.13 3.13 1.00   1.00   0.75 keywords, floats 0.25 tokens, precs, tokens, rules, syntax, ifs, lvals   includes, dups, address_of_node 0.50 read_node, funcs  
79714 2.75 2.75 1.00   1.00   0.50 ints, strings, keywords, comments, floats 0.25 (simple)   read_node, alloc_node, address_of_node 0.50 empty, identity_node, read_node, etc.  
79758 2.25 2.25 1.00   1.00   0.50 comments, strings, floats 0.50 conflicts, tokens, precs, syntax, types, exprs, lvals   read_node 0.00 empty  
79770 3.00 3.00 1.00   1.00   0.50 ints, keywords, strings, floats 0.50 precs, types, syntax, ifs, exprs, lvals, etc.   read_node, includes, block_node 0.50 read_node, etc.  
80763 4.13 4.13 1.00   1.00   0.75 keywords, strings, floats 0.50 conflicts, precs, literals, strings, syntax, exprs, lvals   includes 1.00    
80770 4.00 4.00 1.00   1.00   0.75 strings, floats 0.75 conflicts, precs, literals, strings, syntax, exprs   includes 0.75 read_node  
80774 3.00 3.00 1.00   1.00   0.50 keywords, strings, floats 0.50 conflicts, precs, syntax, exprs, lvals, ifs     0.50 empty  
80777 2.88 2.88 1.00   0.00 (cvs ok) 0.75 keywords, comments, strings 0.50 tokens, precs, syntax, decls, exprs, lvals, chars   includes, address_of_node 0.50 empty, incomp, etc.  
80789 4.25 4.25 1.00   1.00   0.75 strings 1.00 ifs     0.75 empty, incomp  
80805 2.75 2.75 1.00   1.00   0.25 ints,floats, simple, strings, keywords, comments, (simple) 0.25 conflicts, tokens, precs, syntax, ifs (sequence), dups, (simple)   dups, arithops 0.75 empty, incomp  
80818 4.00 4.00 1.00   1.00   0.75 keywords, floats, floats 0.75 precs   includes 0.75 incomp  
80831 NA   eliminado por cópia
80845                              
80858 4.38 4.38 1.00   1.00   0.75 keywords, floats 0.75 precs     1.00    
80866 2.88 2.88 1.00   0.00 (cvs ok) 0.75 keywords, strings 0.50 conflicts, tokens, syntax, precs, empty rules, ifs (sequence), literals, exprs, lvals   includes 0.50 empty, alloc, index, identity, address_of  
80915 4.63 4.63 1.00   1.00   0.75 keywords, comments 1.00       1.00    
80934 2.50 2.50 1.00   0.00 (cvs ok) 0.50 ints, keywords, comments, floats, strings 0.50 conflicts, tokens, precs, empty rules, syntax, exprs, lvals   includes 0.50 funcs  
80937 NA   eliminado por cópia
80945 3.00 3.00 1.00   1.00   0.50 ints, keywords, comments, strings, floats 0.50 tokens, precs, literals, syntax, lvals, exprs     0.50 empty, funcs, incomp  
80946 3.25 3.25 1.00 ROOT 1.00   0.50 ints, strings, comments, 0x00, floats 0.75 precs, ifs, tokens     0.50 incomp  
80950 4.38 4.38 1.00   1.00   0.75 floats, strings, keywords 0.75 syntax, exprs     1.00    
80952 NA   eliminado por cópia
80967 4.38 4.38 1.00   1.00   0.75 floats 0.75 literals, lvals   includes 1.00    
80970 3.00 3.00 1.00   1.00   0.25 keywords, strings, concat, comments, floats 0.50 tokens, strings   includes, alloc_node 0.75 incomp  
80975 2.63 2.63 1.00   1.00   0.25 keywords, comments, strings, floats, concat, .* 0.50 tokens, syntax, types, ifs, strings, exprs, lvals   includes 0.50 empty, incomp  
80980 3.25 3.25 1.00   1.00   0.25 keywords, comments, strings, floats, ints 0.75 tokens, empty rules     0.75 incomp while_node includes
80990 3.63 3.63 1.00   1.00   0.75 keywords, floats 0.75 conflicts, precs, syntax, exprs, lvals   includes 0.50 empty, incomp  
80996 3.63 3.63 1.00   1.00   0.50 ints, keywords, comments 0.75 tokens, precs, lvals   includes 0.75 incomp  
81002 4.00 4.00 1.00   1.00   1.00   0.75 syntax, lvals   includes 0.50 empty  
81016 3.38 3.38 1.00   1.00   0.50 keywords, strings, 0x0, floats 0.50 conflicts, precs, syntax, ifs, lvals, exprs, types     0.75 incomp  
81026                              
81041 3.75 3.75 1.00   1.00   0.50 ints, strings 0.50 conflicts, tokens, syntax, types, literals, strings, lvals   alloc_node 1.00    
81045 4.63 4.63 1.00   1.00   0.75 floats 1.00       1.00    
81057 3.38 3.38 1.00   1.00   0.50 strings, keywords, floats 0.50 conflicts, syntax, decls, ifs (sequence), exprs, lvals     0.75 funcs  
81061 4.38 4.38 1.00   1.00   0.75 keywords, comments 0.75 tokens, lvals     1.00    
81066 4.13 4.13 1.00   1.00   1.00   0.50 conflicts, lvals, literals, types, ifs (sequence)   includes 0.75 incomp  
81082 4.38 4.38 1.00   1.00   0.75 keywords, floats 0.75 tokens   includes 1.00    
81083 4.00 4.00 1.00   1.00   0.50 keywords, floats 0.75 conflicts, precs, syntax   includes 1.00    
81105 4.00 4.00 1.00   1.00   0.75 keywords 0.75 tokens, precs, literals, lvals     0.75 incomp  
81115 3.25 3.25 1.00   1.00   0.50 ints, keywords, comments 0.75 conflicts, tokens, precs, literals, lvals     0.50 funcs  
81121 NA sem entrega intermédia
81130 4.00 4.00 1.00   1.00   0.75 keywords 0.75 conflicts, tokens, syntax, precs, literals, lvals, exprs   read_node, includes 0.75 incomp, read_node  
81149 3.38 3.38 1.00   1.00   0.50 ints, comments, strings, floats 0.50 conflicts, precs, syntax, literals, types, exprs, lvals   includes, print_node, alloc_node 0.75 incomp, empty  
81151 5.00 5.00 1.00   1.00   1.00   1.00 ifs     1.00    
81155 2.13 2.13 1.00   0.00 (cvs ok) 0.25 keywords, comments, strings, 0x??, floats 0.50 tokens, precs, syntax, ifs, semantics   includes, identity_node 0.50 incomp, read_node, etc. memory_node
81159 3.38 3.38 1.00   1.00   0.50 keywords, comments, strings, 0x0, floats 0.50 conflicts, tokens, precs, syntax, ifs, lvals, literals   includes, simple_lnode 0.75 incomp, simple_lnode  
81172 4.00 4.00 1.00   1.00   0.50 ints, keywords, floats 0.75 conflicts, tokens, syntax, exprs     1.00    
81173 4.00 4.00 1.00   1.00   1.00 floats 0.75 syntax, literals, tokens   includes 0.50 incomp, empty  
81183 3.00 3.00 1.00   1.00   0.25 strcmp, comments, .*, rules, etc. 0.50 conflicts, syntax, precs, tokens, exprs, lvals   read_node, alloc_node, address_of_node, funcs 0.75 funcs, read_node  
81186 4.13 4.13 1.00   1.00   0.75 keywords, floats 0.50 conflicts, tokens, syntax, types, literals, ifs     1.00    
81191 4.63 4.63 1.00   1.00   0.75 comments, strings 1.00       1.00    
81196 4.38 4.38 1.00   1.00   0.75 floats 0.75 precs     1.00    
81197 4.75 4.75 1.00   1.00   1.00   0.75 precs, lvals, tokens     1.00    
81201 4.38 4.38 1.00   1.00   0.75 keywords 0.75 precs   includes 1.00    
81205 4.75 4.75 1.00   1.00   1.00   0.75 tokens, precs, lvals   includes 1.00    
81209 3.63 3.63 1.00   1.00   0.75 floats 0.75 tokens   includes 0.50 empty  
81268 NA sem entrega intermédia
81271 5.00 5.00 1.00   1.00   1.00 ints, 0x0 1.00 ifs   includes 1.00    
81273 4.38 4.38 1.00   1.00   0.75 keywords, floats 0.75 tokens, precs     1.00    
81283 3.25 3.25 1.00   1.00   0.50 strings, .*, floats 0.75 syntax, ifs, literals, exprs   includes, missing address_of_node 0.50 incomp, empty memory_node
81306 3.75 3.75 1.00   1.00   0.50 ints, strings, concat, .* 0.50 precs, decls, exprs, lvals, literals, strings     1.00    
81328 3.75 3.75 1.00   1.00   0.50 ints, keywords, floats 0.50 conflicts, tokens, syntax, types, literals, ifs     1.00    
81329 NA   eliminado por cópia
81338 4.00 4.00 1.00   1.00   0.50 keywords, strings, rules, ktnksbye, floats 0.75 precs, ifs (sequence)   address_of_node, lvals 1.00 null_node  
81345 NA sem entrega intermédia
81354 3.38 3.38 1.00   1.00   0.50 keywords, comments, strings, concat 0.50 conflicts, tokens, precs, exprs, funcall, alloc, ifs     0.75 ast null_node includes, decls
81365 4.00 4.00 1.00   1.00   0.75 comments, floats, strings 0.75 tokens, precs     0.75 funcs, identity_node  
81380 NA   eliminado por cópia
81423 3.38 3.38 1.00   1.00   0.50 keywords, strings, literals, ints, floats 0.50 conflicts, precs, syntax, read, ifs, exprs   alloc_node 0.75 identity_node identidy_node
81428 4.63 4.63 1.00   1.00   0.75 floats 1.00       1.00    
81440 NA   eliminado por cópia
81467 NA   eliminado por cópia
81470 3.38 3.38 1.00   1.00   0.50 ints, keywords, comments, floats 0.50 conflicts, tokens, precs, syntax, exprs, ifs, lvals     0.75 incomp  
81478 4.38 4.38 1.00   1.00   0.75 floats, strings 0.75 tokens   includes 1.00    
81491 3.38 3.38 1.00   1.00   0.50 comments, identifiers, floats 0.50 conflicts, precs, syntax, exprs, lvals, types   includes, address_of_node 0.75 empty, identity_node  
81500 4.75 4.75 1.00   1.00   1.00   0.75 precs     1.00    
81505 4.63 4.63 1.00   1.00   0.75 keywords 1.00     includes 1.00    
81513                              
81530 4.38 4.38 1.00   1.00   0.75 keywords, HEX_HELP 0.75 precs   includes 1.00    
81534 4.38 4.38 1.00   1.00   0.75 keywords, floats 0.75 precs     1.00    
81538 2.63 2.63 1.00   1.00   0.25 (simple) 0.50 conflicts, tokens, precs, literals, syntax,. Exprs, lvals   includes 0.50 incomp, empty  
81543 4.38 4.38 1.00   1.00   0.75 keywords, comments, floats 0.75 lvals, syntax, exprs, literals     1.00   identify_node
81577 4.00 4.00 1.00   1.00   0.75 keywords, strings 0.75 precs, syntax, exprs, lvals, literals   includes 0.75 read_node  
81596 NA   eliminado por cópia
81609 4.00 4.00 1.00   1.00   0.75 keywords, floats 0.75 ifs (sequence), lvals   elsif nodes 0.75 processExpr, incomp  
81620 5.00 5.00 1.00   1.00   1.00   1.00       1.00    
81630 NA   eliminado por cópia
81633 3.75 3.75 1.00   1.00   0.75 keywords 0.50 conflicts, precs, syntax, exprs, funcall, read, ifs     0.75 read_node  
81647 4.37 4.37 1.00   1.00   0.75 keywords 0.75 tokens     1.00    
81651 NA sem entrega intermédia
81654 3.38 3.38 1.00   1.00   0.75 floats 0.50 conflicts, tokens, precs, syntax, exprs, lvals     0.50 incomp, empty  
81657 4.38 4.38 1.00   1.00   0.75 floats 0.75 precs, strings, literals, style   includes 1.00    
81670 3.75 3.75 1.00   1.00   0.50 ints, keywords, strings, floats 0.50 conflicts, tokens, precs, syntax, exprs   includes 1.00    
81676 4.38 4.38 1.00   1.00   0.75 keywords, strings, floats 0.75 precs, syntax   print_node 1.00    
81700 3.38 3.38 1.00   1.00   0.50 keywords, comments, strings, concat, .*, floats 0.50 conflicts, tokens, precs, strings, concat     0.75 incomp  
81703 4.75 4.75 1.00   1.00   1.00 floats, keywords 0.75 precs   includes 1.00    
81714 3.63 3.63 1.00   1.00   0.50 comments, strings, literals, floats 0.75 conflicts, precs, ifs     0.75 empty  
81719 4.75 4.75 1.00   1.00   1.00 floats 0.75 precs   includes 1.00    
81726 4.75 4.75 1.00   1.00   1.00 keywords, strings 0.75 precs     1.00    
81749 4.38 4.38 1.00   1.00   0.75 keywords, comments, floats 0.75 tokens, exprs, lvals     1.00    
81756 3.38 3.38 1.00   1.00   0.50 ints, comments, strings, concat 0.50 conflicts, precs, syntax, exprs, lvals   includes 0.75 empty  
81757                              
81785 5.00 5.00 1.00   1.00   1.00   1.00       1.00    
81796 2.88 2.88 1.00   1.00   0.25 ints, keywords, floats, chars, strings 0.75 conflicts, exprs   read_node, address_of_node, index_node, indexation_node 0.50 incomp, read_node, empty  
81805 5.00 5.00 1.00   1.00   1.00   1.00       1.00    
81811 4.75 4.75 1.00   1.00   1.00 strings 0.75 tokens, precs   includes 1.00    
81824 3.38 3.38 1.00   1.00   0.50 keywords, strings 0.50 conflicts, tokens, precs, syntax, ifs, strings, lvals   includes 0.75 incomp  
81845 4.38 4.38 1.00   1.00   0.75 strings 0.75 precs     1.00    
81853 4.38 4.38 1.00   1.00   0.75 keywords, floats 0.75 conflicts, tokens, precs, literals, lvals     1.00    
81861 4.38 4.38 1.00   1.00   0.75 floats 0.75 ifs, exprs     1.00    
81878 4.13 4.13 1.00   1.00   0.75 keywords, floats 0.50 syntax, decls     1.00    
81888 4.75 4.75 1.00   1.00   1.00 strings, ints 0.75 tokens, syntax, exprs     1.00    
82009 1.50 1.50 1.00   0.00   0.25 ints, keywords, comments, strings, 0x00, floats 0.25 tokens, precs, syntax, decls, ifs   identity_node, missing null_node 0.25 funcs, read_node, etc.  
82034 2.63 2.63 1.00   1.00   0.25 (simple) 0.50 conflicts, syntax, precs, syntax, ifs, strings     0.50 empty  
82145 3.00 3.00 1.00   1.00   0.25 keywords, floats, strings, ints 0.50 conflicts, tokens, precs, syntax, ifs (sequence), exprs     0.75 incomp  
82259 3.25 3.25 1.00   1.00   0.75 Ints, floats, keywords 0.00 (simple)     0.75 incomp, alloc_node identify_node
82343 3.00 3.00 1.00   1.00   0.50 keywords, strings 0.50 conflicts, tokens, syntax, exprs, lvals     0.50 empty, read_node, code  
82403 3.38 3.38 1.00   1.00   0.50 keywords, comments, floats, strings 0.50 precs, syntax, ifs   read_node, null_node 0.75 incomp, read_node  
82406 3.38 3.38 1.00   1.00   0.50 ints, strings, keywords, comments 0.50 conflicts, tokens, syntax, precs, types, exprs, empty rules, strings, dups   alloc_node 0.75 incomp, alloc_node  
82433 2.38 2.38 1.00   1.00   0.50 keywords, comments, strings, 0x00, floats 0.25 conflicts, tokens, exprs, syntax, precs, decls, empty rules, lvals   alloc_node, address_of_node 0.25 empty  
82448 2.63 2.63 1.00   1.00   0.75 keywords, strings 0.50 conflicts, precs, ifs (sequence), lvals, syntax   includes 0.00 empty  
82457 3.00 3.00 1.00   1.00   0.50 ints, strings, floats 0.50 conflicts, syntax, ifs, exprs, lvals   includes 0.50 incomp, empty  
82468 4.00 4.00 1.00   1.00   0.75 ints, strings, 0x00 0.75 conflicts, precs, lvals     0.75 read_node  
82502 3.75 3.75 1.00   1.00   0.75 keywords 0.50 conflicts, tokens, syntax, precs, ifs, types, lvals, etc.   read_node 0.75 incomp, read_node  
82506 3.00 3.00 1.00   1.00   0.50 keywords, comments, strings, floats 0.50 conflicts, tokens, precs, syntax, ifs, lvals, exprs     0.50 empty, read_node, incomp  
82507 3.38 3.38 1.00   1.00   0.75 keywords 0.50 conflicts, precs, types, syntax, ifs, lvals, exprs   includes, print_node 0.50 empty  
82517 3.38 3.38 1.00   1.00   0.50 keywords, strings, floats, ints 0.50 conflicts, precs, ifs, exprs, lvals     0.75 read_node, nil_node  

___EOT___; </runphp>