Compiladores/Projecto de Compiladores: Difference between revisions

From Wiki**3

< Compiladores
Line 9: Line 9:


== Introdução ao Desenvolvimento ==
== Introdução ao Desenvolvimento ==
O projecto está dividido em duas partes: a definição do problema da criação do compilador e a definição da linguagem de programação em causa (esta secção) e corresponde a um problema de programação genérico para qualquer linguagem, devendo ser abordado como qualquer projecto de software. A segunda parte, mais importante no contexto da disciplina, implica a compreensão da semântica a realizar na linguagem suportada pelo compilador (ver manual de referência da linguagem, abaixo).
* [[Compiladores/Projecto de Compiladores/Fases Desenvolvimento|Fases de Desenvolvimento]]
* [[Compiladores/Projecto de Compiladores/Fases Desenvolvimento|Fases de Desenvolvimento]]
* [[Compiladores/Projecto de Compiladores/Compiladores Exemplo|Compiladores Exemplo]] - Simple, Compact, pf2asm
* [[Compiladores/Projecto de Compiladores/Compiladores Exemplo|Compiladores Exemplo]] - Simple, Compact, pf2asm

Revision as of 19:02, 21 February 2015

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.

Avaliação do Projecto

Introdução ao Desenvolvimento

O projecto está dividido em duas partes: a definição do problema da criação do compilador e a definição da linguagem de programação em causa (esta secção) e corresponde a um problema de programação genérico para qualquer linguagem, devendo ser abordado como qualquer projecto de software. A segunda parte, mais importante no contexto da disciplina, implica a compreensão da semântica a realizar na linguagem suportada pelo compilador (ver manual de referência da linguagem, abaixo).

Manual de Referência da Linguagem

Material de Apoio e Testes

Material Diverso

Using xml2dot to draw ASTs

The xml2dot JAR can be Googled and used as shown below:

Example for the Compact language:

compact myprog.cpt -target xml
java -cp xml2dot.jar xml2dot.xml2dot myprog.xml

Note that compact is assumed to be available in the PATH. Otherwise, the explicit path must be provided, e.g., ./compact or other specification.