Compiladores/Aula Prática 02: Difference between revisions
From Wiki**3
| (20 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
== Tópicos == | == Tópicos == | ||
Revisões de conceitos de padrões de desenho aplicados no contexto da linguagem C++, especialmente, mas sem limitação, Composite, Visitor (Abstract Factory, Strategy são deixados como trabalho para casa). | Revisões de conceitos de padrões de desenho aplicados no contexto da linguagem C++, especialmente, mas sem limitação, [[Composite (padrão de desenho)|Composite]], [[Visitor (padrão de desenho)|Visitor]] ([[Abstract Factory Pattern (padrão de desenho)|Abstract Factory]], [[Strategy Pattern (padrão de desenho)|Strategy]] são deixados como trabalho para casa). | ||
Aplicação ao padrão Composite no contexto do projecto: AST ("abstract syntax tree"), nomeadamente na especificação dos nós da árvore. | |||
== | == Compiler AST Nodes == | ||
* Considerar a descrição do analisador sintáctico ('''tiny.y''') para a linguagem Tiny, descrita em: [[Semantic Analysis/The Tiny language: semantic analysis example and C generation]]. | |||
* Com base nos nós da CDK (ver '''ast'''), construir os nós para as declarações e para a instrução '''write''' (nós '''declaration_node''' e '''write_node'''). Os resultados devem ser parecidos com os presentes no compilador da linguagem Og para as situações análogas. | |||
* [[Nodes from CDK and Simple|Lista de nós da CDK e do Simple]]. | |||
* Vídeos sobre estes tópicos: | |||
** Linguagem UDF (2024/2025) e GIT (parcial: ver informação completa nestas páginas): https://www.youtube.com/watch?v=dywEh5mfQTo | |||
** Linguagem TIL (2023/2024) e GIT: (ver MML) | |||
** Linguagem MML (2022/2023) e GIT: https://youtu.be/xkDKt4sU32k | |||
** Linguagem L22 (2021/2022) e CVS (análoga a outras linguagens): https://www.youtube.com/watch?v=NN1_MIKgxGw | |||
** Linguagem FIR e CVS (análoga a outras linguagens): https://youtu.be/h95WRzwiAME | |||
* [[Compiladores/Aula Prática 02/Exemplos|Exemplos]] (soluções dos exercícios de avaliação) | |||
== Sheep and Herds == | |||
* Problem and solution: [[Sheep and Herds in C++]]. | |||
[[category:Compiladores]] | [[category:Compiladores]] | ||
[[category:Ensino]] | [[category:Ensino]] | ||
Latest revision as of 18:39, 6 May 2025
Tópicos
Revisões de conceitos de padrões de desenho aplicados no contexto da linguagem C++, especialmente, mas sem limitação, Composite, Visitor (Abstract Factory, Strategy são deixados como trabalho para casa).
Aplicação ao padrão Composite no contexto do projecto: AST ("abstract syntax tree"), nomeadamente na especificação dos nós da árvore.
Compiler AST Nodes
- Considerar a descrição do analisador sintáctico (tiny.y) para a linguagem Tiny, descrita em: Semantic Analysis/The Tiny language: semantic analysis example and C generation.
- Com base nos nós da CDK (ver ast), construir os nós para as declarações e para a instrução write (nós declaration_node e write_node). Os resultados devem ser parecidos com os presentes no compilador da linguagem Og para as situações análogas.
- Lista de nós da CDK e do Simple.
- Vídeos sobre estes tópicos:
- Linguagem UDF (2024/2025) e GIT (parcial: ver informação completa nestas páginas): https://www.youtube.com/watch?v=dywEh5mfQTo
- Linguagem TIL (2023/2024) e GIT: (ver MML)
- Linguagem MML (2022/2023) e GIT: https://youtu.be/xkDKt4sU32k
- Linguagem L22 (2021/2022) e CVS (análoga a outras linguagens): https://www.youtube.com/watch?v=NN1_MIKgxGw
- Linguagem FIR e CVS (análoga a outras linguagens): https://youtu.be/h95WRzwiAME
- Exemplos (soluções dos exercícios de avaliação)
Sheep and Herds
- Problem and solution: Sheep and Herds in C++.