-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRelatorioRascunho.txt
89 lines (40 loc) · 2.31 KB
/
RelatorioRascunho.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
RELATÓRIO CHECK LIST:
---------------------------------------------------------------------------------------------
1 - Modificar a gramática:
- pk?
- para k?
- Tornar a gramática numa gramática regular (recursiva à esquerda)
- A gramática é ambígua, por isso tem de resolver as ambiguidades de modo a resolver os conflitos de shift reduce que eram causados, através de precedências (if e if/else), criar novas regras na gramática(separar o AND do OR, O = !=, >= <=), separar operadores (porque tinham diferentes prioridades (agrupar à esquerda/direita))
Mudar a gramática para resolver as a
---------------------------------------------------------------------------------------------
2 - Geração de código:
- coisas que fizemos todas fofas (inicializar o valor de retorno,...)
---------------------------------------------------------------------------------------------
3 - limpar memória
---------------------------------------------------------------------------------------------
4 - Usar uma estrutura, pq?
---------------------------------------------------------------------------------------------
5 - Análise da linguagem (opcional)
- coisas que a linguagem não preve e que dá erro em java
- cenas do mal
- como resolver cenas da linguagem
---------------------------------------------------------------------------------------------
6 - Garbage collection
---------------------------------------------------------------------------------------------
falta:
análise lexical:
expressão regular para os IDS e para os intlit
pk foi necessário separar as prioridades
como foi realizado o tratamento de erros
(contar linhas e colunas)
como foi feita a parte de ignorar os comentários (visto que podem estar no meio do cod)
análise sintática:
como é que o yaac vai buscar as cenas ao lex
recursividade
temos à direita, mas era preferivel ser à esquerda
como resolvemos os conflitos shift reduce (do if/else e assim)
como resolvemos a questão da indexação de arrays (não poderem existir arrays bidimensionais)
arvore sintaxe
pk utilizar apenas só uma estrutura(temos duas, mas é como se fosse só uma...)?
como tratamos os nos obrigatórios (têm de imprimir null)
como tratamos a questão do methodo (que tem aquelas cenas do methidparams e do methodbody)