Legenda

A entrega intermédia vale 6 valores em 20.

A atribuição de pontos (positivos e negativos) é como já foi anunciado (resumido abaixo).

Existem 6 factores correspondentes a pontos positivos :

  • CVS: existência do projecto no repositório ( 0.50 val.)
  • Compilação: capacidade de produzir o executável 's9' ( 0.50 val.) - este factor condiciona a atribuição dos restantes
  • Léxico: qualidade e nível de desenvolvimento da especificação do analisador lexical ( 2.00 val.)
  • Sintaxe: qualidade e nível de desenvolvimento da especificação do analisador sintáctico ( 1.00 val.)
  • Nós: qualidade e nível de desenvolvimento da família de nós da árvore produzida pelo analisador sintáctico ( 1.00 val.)
  • Semântica: qualidade e nível de desenvolvimento do gerador de código ( 1.00 val.)

Existem 2 factores correspondentes a pontos negativos :

  • Remoção da funcionalidade existente no Compact (até -4.00 val.)
  • Não implementação das acções do analisador sintáctico e correspondentes nós, etc. (até -2.00 val.)

Quaisquer dúvidas ou sugestões, relativas a esta informação, devem ser enviadas ao responsável pela disciplina.

As questões relativas às colunas "Problemas" devem ser resolvidas quanto antes, ou nos horários de dúvidas de 4ª e 5ª (11:00-12:00) ou no horário de apoio de 6ª (09:00-11:00).

Pauta


Nota Total CVS Compilação Léxico Sintaxe Nós Semântica Compact Nós
Grupo 6.00 6.00 0.50 Problemas 0.50 Problemas 2.00 Problemas 1.00 Problemas 1.00 Problemas 1.00 Problemas -4.00 -2.00
001 5.80 5.80 0.50 Cwriter 0.50
1.80 tokens 1.00 qualif node / type node 1.00
1.00
0.00 0.00
002 6.00 6.00 0.50
0.50
2.00
1.00 qualif node 1.00
1.00
0.00 0.00
003 5.75 5.75 0.50 Interp 0.50
2.00
0.75 Assignment / block / expr 1.00
1.00 ADDR* 0.00 0.00
004 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
005 5.80 5.80 0.50
0.50
1.80 tokens 1.00 Assignment / struct 1.00
1.00
0.00 0.00
006 5.75 5.75 0.50
0.50 ROOT 2.00
0.75 Struct .. / types / vardecl / exprs / ReturnToggle 1.00
1.00
0.00 0.00
007 5.75 5.75 0.50
0.50
2.00
0.75 Variable / TypeStructNode 1.00
1.00
0.00 0.00
008 5.25 5.25 0.50
0.50
1.50 -> SIGNAL / tokens 0.75 TYPE_VOID etc. / %union / FuncStatement, VarStatement / types / expressions 1.00
1.00
0.00 0.00
009 5.55 5.55 0.50 Cwriter/Interp 0.50
1.80 getSciFromEng* 0.75 DeclarationNode / TypeNode / expressions / memória* (strings) / struct types 1.00
1.00
0.00 0.00
010 5.75 5.75 0.50
0.50
2.00
0.75 Types / recursões / exprs / memória* (strings) 1.00
1.00 Assignment / whileelse 0.00 0.00
011 5.55 5.55 0.50
0.50
1.80 TmpString / .. 0.75 PublicKWNode / structdecl / exprs / strings 1.00
1.00 Assignment 0.00 0.00
012 5.75 5.75 0.50
0.50
2.00
0.75 Qualif / declaration / definition / returnblock / memória* (strings) 1.00
1.00 Assignment / ADDR* 0.00 0.00
013 3.00 3.00 0.50 Cwriter/Interp 0.50
2.00
0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
014 2.90 2.90 0.50 Cwriter/Interp 0.50
1.90 readEngineering* 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
015 5.75 5.75 0.50 Cwriter 0.50
2.00 change_char / vecs 0.75 %union / exprs / strings / memória* 1.00
1.00
0.00 0.00
016 6.00 6.00 0.50
0.50
2.00
1.00 Functions / types 1.00
1.00
0.00 0.00
017 5.25 5.25 0.50 Cwriter/Interp 0.50 strlen, strcat 2.00 atof 0.25 Aux funcs / qualif / types / variable / acções 1.00
1.00
0.00 0.00
018 5.50 5.50 0.50
0.50 bison 2.00
0.75 Assignment / expr e rexpr 0.75
1.00
0.00 0.00
019 5.50 5.50 0.50
0.50
1.50 numeric_limits / tokens / strings 1.00 Types / strings 1.00
1.00
0.00 0.00
020 5.50 5.50 0.50 Cwriter/Interp 0.50
2.00
0.50 expression::Sequence / types / nil expr / memória* (strings) 1.00
1.00
0.00 0.00
021 2.80 2.80 0.50
0.50
1.80 Malloc* / bad strings 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
022 3.25 3.25 0.50 Interp 0.50
1.50 Reais / funcoes.h / tokens 0.75 Types / strings / structs 1.00
1.00 ** 0.00 -2.00
023 5.75 5.75 0.50 Cwriter/Interp 0.50
2.00
0.75 %union / %precs / S9_UPLUS / expr 1.00
1.00
0.00 0.00
024 5.75 5.75 0.50
0.50
2.00 string_text 0.75 %union / %precs / memória* (strings) /expr 1.00
1.00 Assignment 0.00 0.00
025 4.80 4.80 0.25 Compact* 0.50 SemanticProcessor 1.80 # / e / tokens / hex_to_char 0.50 struct=stmt? / var=stmt? / memória* (strings) / types / structs 0.75 declarações 1.00
0.00 0.00
026 5.75 5.75 0.50
0.50
2.00 atof / atoi / notação eng. 0.75 %precs / structs / types / read 1.00 read 1.00 read 0.00 0.00
027 5.55 5.55 0.50 Cwriter/Interp 0.50
1.80 DataBase / tokens 0.75 OPEN_RECT, etc. / strings / types 1.00
1.00
0.00 0.00
028 0.00 0.00 0.50 Cwriter/Interp 0.00 Cwriter 0.00 Floats / STRUCT 0.00 var decls / structs / types / atom 0.00 vars 0.00 Assignment -1.00 0.00
029 5.25 5.25 0.50 Interp 0.50
1.50 Floats / strings / tokens 0.75 %precs / %union (long double) / vardecls / types / estruturado / ELIFs 1.00 elif nodes / StructNodeVars 1.00 Assignment / processForNodeVars 0.00 0.00
030 2.50 2.50 0.50
0.50
1.50 new string* / malloc* 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
031 3.50 3.50 0.50
0.50
1.50 Conversões / inteiros / tokens 0.25 DI_EMPTY, etc. / InfoGeralNode / InstrNode / structs 0.75 InfoGeralNode / InstrNode 1.00 Assignment -1.00 0.00
032 1.00 1.00 0.50 Interp 0.50
0.00 Compact 0.00 Compact 0.00 Compact 0.00 Compact 0.00 0.00
033 5.75 5.75 0.50
0.50
2.00 notação eng. / floats 0.75 %precs / whileelse / expr 1.00
1.00 Assignment 0.00 0.00
034 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
035 0.00 0.00 0.25 falta código no CVS 0.00
0.00 Comentários / floats / tokens / strings 0.00 Compact 0.00 sem nós 0.00 sem semântica -2.00 -2.00
036 5.50 5.50 0.50
0.50
2.00 Atof / 0+ 0.50 %precs / assignment / read / stmt / strings / expr 1.00 StructNode 1.00 Assignment 0.00 0.00
037 0.00 0.00 0.50
0.00 faltam nós 0.00 (contactar docente responsável) 0.00 (contactar docente responsável) 0.00 Compact 0.00 (contactar docente responsável) 0.00 -2.00
038 3.25 3.25 0.50 Cwriter/Interp 0.50
2.00 strchr 0.50 var decls / structs / types / qualif / blocks / expr 0.75
1.00 ** 0.00 -2.00
039 5.75 5.75 0.50
0.50
2.00 letterToDot 0.75 estruct / strings 1.00 ExclamationNode 1.00
0.00 0.00
040 3.25 3.25 0.50 Interp 0.50
2.00 strcpy / notação eng. 0.50 types / qualifs / structs 0.75 ReadingNone / FileS9Node 1.00 ** 0.00 -2.00
041 3.30 3.30 0.50 Cwriter/Interp 0.50
1.80 FOLOW_NUM / notação eng. / cchain / real_interpreter 0.75 stmt / structs / strings 0.75
1.00 ** 0.00 -2.00
042 1.00 1.00 0.50 Cwriter/Interp 0.50
1.50 Definições / estados / atof / atoi / wierd_base / floats 0.50 %precs / types / ELIFs / elif_seq / literal / IfElifSequenceElseNode 0.00 Compact 0.00 Compact 0.00 -2.00
043 5.75 5.75 0.50 Cwriter/Interp 0.50
2.00 strlen / numeric_limits / 1e-21 0.75 %precs / leitura / strings 1.00
1.00
0.00 0.00
044 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
045 0.50 0.50 0.50 Cwriter/Interp 0.00 Cwriter 0.00 LF, CR, HT / X_STRING_H / notação eng. / tokens 0.00 %precs / strcturateb / strings exprs / var decls 0.00
0.00 VariableNode 0.00 0.00
046 2.50 2.50 0.50 Cwriter/Interp 0.50
1.50 notação cient. / notação eng. / strcpy / atoi / tokens 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
047 0.00 0.00 0.50 Cwriter/Interp 0.00 faltam nós 0.00 octal, bin, hex / atoi / literais negativos 0.00 var decls / declaracao_variavel / types / assignment / strings / !Compact 0.00 Compact 0.00 ** -1.00 -1.00
048 6.00 6.00 0.50
0.50
2.00 notação eng. 1.00 %precs / types / strings 1.00
1.00
0.00 0.00
049 5.25 5.25 0.50 Cwriter/Interp 0.50
1.50 Comentários / notação cient. / floats / buffer / tokens 0.75 Types / strings / expr / AssignmentNode2 1.00 VarNode 1.00 AssignmentNode2 0.00 0.00
050 5.25 5.25 0.50 Interp 0.50
1.50 notação cient. / floats / buffer / tokens 0.75 %precs / read / exprs / strings / def ret 1.00
1.00
0.00 0.00
051 4.75 4.75 0.50
0.50
1.00 getint / itoa / stringGenerator, etc. / INT / overflow 0.75 Types / VariableNode / AssignmentStructNode / expressions, variables (recursão à direita) / PTRNode / expr / read / strings 1.00
1.00
0.00 0.00
052 5.25 5.25 0.50
0.50
1.50 notação eng. / notação cient. / tokens 0.75 %precs / '..' '→' / types / IfElifNode, IfElifElseNode / strings / expr / read / structs 1.00 ELIFs 1.00 ELIFs 0.00 0.00
053 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
054 1.25 1.25 0.50
0.50
2.00 Inteiros / atoi / notação cient. 0.25 Compact e pouco mais 0.00 Compact 0.00 Compact 0.00 -2.00
055 5.55 5.55 0.50
0.50
1.80 lexug (inútil) / atoi / notação eng. 0.75 yug / %union / s9::node::Sequence / expr / structs 1.00
1.00 processSequence 0.00 0.00
056 3.05 3.05 0.50 Cwriter/Interp 0.50
1.80 Definições / overflow, undeflow / tokens 0.50 read / declaration vs. assignment / expr / structs 0.75
1.00 ** 0.00 -2.00
057 1.50 1.50 0.50 Cwriter/Interp 0.50
0.50 (muito fraco) / atof / strings / números / tokens 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
058 0.00 0.00 0.50 Cwriter/Interp 0.50
0.00 Compact 0.00 Compact 0.00 Compact 0.00 Compact 0.00 -2.00
059 2.50 2.50 0.50 Cwriter/Interp 0.50
1.50 Strings / notação eng. / notação cient. / números 0.25 %precs / stmt / expr / structs / números (val) 0.75
1.00 ** 0.00 -2.00
060 5.50 5.50 0.50
0.50
1.50 TAMANHO / snprintf / strtof (32 bits) / tokens 1.00 %precs / ficheiro / variavel vs. variavelGlobal / types / strings / ELIFs 1.00 ELIFs 1.00 ELIFs 0.00 0.00
061 0.00 0.00 0.50 Cwriter/Interp 0.00 nós mal utilizados 0.00 printf 0.00 %precs / NULLs / ELIFs / exprs / strings 0.00 structs 0.00 ** 0.00 -2.00
062 5.00 5.00 0.50
0.50
1.50 notação eng. / tokens 0.50 const_v, qualif_v, expr_v, etc. / structs 1.00
1.00
0.00 0.00
063 3.25 3.25 0.50
0.50
2.00 notação cient. / aentof 0.50 Types / exprs / structs / read 0.75
1.00 ** 0.00 -2.00
064 4.50 4.50 0.50 Cwriter/Interp 0.50
1.50 tokens / reais / atoi / new* 0.25 cadeia_caracteres / estruturado / instr / expr / read 0.75
1.00 ** 0.00 0.00
065 1.00 1.00 0.50 Cwriter/Interp 0.50
2.00
0.00 Compact 0.00 Compact 0.00 Compact 0.00 -2.00
066 5.55 5.55 0.50
0.50
1.80 tokens / reais 0.75 %precs / functionliteral / type / exprs / strings / for nodes 1.00 for nodes 1.00 for nodes 0.00 0.00
067 1.50 1.50 0.50 Cwriter/Interp 0.50
0.50 (muito fraco) / atoi / Compact 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
068 1.80 1.80 0.50
0.50
0.80 comentários Compact / caracteres / strings / números 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
069 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
070 4.00 4.00 0.50 Cwriter/Interp 0.50
0.25 Memória* / reais / comentários / atof / etc. / uso do flex muito deficiente (as classes auxiliares repetem o processamento que o flex já deveria ter feito) 0.75 %precs / vtypes / stmt / expr / read 1.00
1.00
0.00 0.00
071 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
072 3.25 3.25 0.50
0.50
2.00
0.50 %precs / structs, atomic, etc. / types / exprs 0.75
1.00 ** 0.00 -2.00
073 4.00 4.00 0.50
0.50
1.50 tokens / notação eng. / strcpy, strcat, sprintf, etc. 0.50 %precs / exprs / strings / !Compact 1.00
1.00
-1.00 0.00
074 2.50 2.50 0.50 Cwriter/Interp 0.50
1.50 tokens / literais negativos / notação eng. / atof / converte_base 0.25 %union / declaracao / variavel / typo / structs / strings / blocos / exprs / etc. 0.75
1.00 ** 0.00 -2.00
075 5.75 5.75 0.50 Cwriter/Interp 0.50
2.00 notação cient. / overflow 0.75 %precs / types / strings 1.00
1.00 mallocnode? 0.00 0.00
076 5.55 5.55 0.50
0.50
1.80 comentários / notação cient. / notação eng. 0.75 for_expr / string_el / expr 1.00
1.00 implms? 0.00 0.00
077 5.30 5.30 0.50
0.50
1.80 tokens 0.50 %precs / structs / listint / expr 1.00
1.00
0.00 0.00
078 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
079 0.50 0.50 0.50 Cwriter/Interp 0.00 sem makefile 0.00 decimalstr / strings / atoi / literais negativos / notação eng./ notação cient. 0.00 %union / block / const / strings / expr 0.00
0.00
0.00 0.00
080 5.75 5.75 0.50
0.50
2.00 S9_TYPE / notação cient. 0.75 %precs / stratom / type / expr 1.00
1.00 CALL → TRASH → PUSH 0.00 0.00
081 0.50 0.50 0.50
0.00 faltam nós 0.00 Malloc* / strlen, strcat, etc. / notação cient. 0.00 %union / %precs / optional_assignment / expr / strings 0.00
0.00
0.00 0.00
082 4.05 4.05 0.50 Cwriter/Interp 0.50
1.80 engNotationStr / reais 0.25 Compact e pouco mais 1.00
1.00 ** 0.00 -1.00
083 0.00 0.00 0.40 falta código no CVS 0.00 projecto incompleto 0.00 aetod / reais / string 0.00 %precs / variable / types / structured / expr 0.00
0.00 structs, etc. 0.00 -1.00
084 0.00 0.00 0.50
0.00 SemanticProcessor 0.00 notação eng. 0.00 Types / strings / expr / instr, block, etc. / ifs 0.00
0.00 structs, etc. -1.00 -1.00
085 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
086 0.00 0.00 0.50 Cwriter/Interp 0.50
1.25 tokens / BEGIN / notação cient. / notação eng. / ESTRUTURA 0.25 %precs / acções 0.00 Compact 0.00 Compact -1.00 -2.00
087 5.50 5.50 0.50
0.50
2.00
0.50 Types / block / read / stmt / next, stop / expr / strings 1.00
1.00
0.00 0.00
088 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
089 1.00 1.00 0.50
0.50
0.00 Compact com for 0.25 Compact e pouco mais 0.75
1.00 ** 0.00 -2.00
090 0.00 0.00 0.50 Cwriter/Interp 0.00 nós mal utilizados 0.00 tokens / notação eng. / atof / strings 0.00 Sequências / qualif / tipos / !Compact 0.00 Compact 0.00 Compact -1.00 -2.00
091 0.00 0.00 0.25 falta código no CVS 0.00
0.00 real_suffix / strings / "strut" / BEGIN 0.00 Types / expressões / ifs 0.00 sem nós 0.00 sem semântica -2.00 -2.00
092 2.55 2.55 0.50
0.50
1.80 atoi / notação eng. / X_REAL / X_SPECIAL 0.25 Sequências / instr / expr / strings / types 0.75
0.75 sequências 0.00 -2.00
093 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00
094 0.00 0.00 0.00
0.00
0.00
0.00
0.00
0.00
0.00 0.00

3.23 3.23 0.43
0.38
1.24
0.43
0.63
0.69



53.8% 53.8% 86.5%
75.5%
62.1%
43.1%
63.3%
68.9%