Difference between revisions of "Compiladores/Projecto de Compiladores/Material de Apoio ao Desenvolvimento"

From Wiki**3

< Compiladores‎ | Projecto de Compiladores
(Material de Apoio)
(Material de Apoio)
 
(42 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{PRJCompiladoreAvisosEN20162017}}
+
{{PRJHEADER}}
<!--{{PRJCompiladoreAvisosEE20152017}}-->
 
{{PRJCOMandatory20162017}}
 
 
{{TOCright}}
 
{{TOCright}}
 
<!-- '''<font color="red">A DISPONIBILIZAR BREVEMENTE</font>''' -->
 
<!-- '''<font color="red">A DISPONIBILIZAR BREVEMENTE</font>''' -->
Line 8: Line 6:
 
O projecto, escrito em C++, deve ser desenvolvido considerando os princípios de desenvolvimento de compiladores, assim como os da boa programação com objectos e os aspectos de arquitectura dos padrões de desenho aplicáveis. Notar que esta tarefa está implicitamente facilitada pelo material de apoio, que condiciona o desenvolvimento do compilador.
 
O projecto, escrito em C++, deve ser desenvolvido considerando os princípios de desenvolvimento de compiladores, assim como os da boa programação com objectos e os aspectos de arquitectura dos padrões de desenho aplicáveis. Notar que esta tarefa está implicitamente facilitada pelo material de apoio, que condiciona o desenvolvimento do compilador.
  
O código presente nas bibliotecas de apoio ao desenvolvimento do projecto é de uso obrigatório:
+
O código presente nas bibliotecas de apoio (já instalado na máquina virtual) ao desenvolvimento do projecto é de uso obrigatório:
  
* Código de base ao desenvolvimento do compilador: CDK12 [[media:libcdk12-201612281605.tar.bz2]] (já está instalado na máquina virtual)
+
* CDK [[media:libcdk19-202403010000.tar.bz2]] - código de base para o desenvolvimento do compilador
* Código de base aos programas gerados pelo compilador (runtime): RTS4 [[media:librts4-201602111900.tar.bz2]] (já está instalado na máquina virtual)
+
* RTS [[media:librts5-202103031636.tar.bz2]] - código de base para os programas gerados pelo compilador (runtime)
  
{{CVSCode|Notar que o [[Compiladores/Projecto de Compiladores/Repositório CVS|repositório CVS]] já contém uma versão do projecto a desenvolver. Isto significa que ''antes'' de se começar a programar, o projecto deve ser obtido a partir do repositório.}}
+
{{CVSCode|Notar que o [[Compiladores/Projecto de Compiladores/Repositório GIT|repositório GIT]] já contém uma versão do projecto a desenvolver. Isto significa que ''antes'' de se começar a programar, o projecto deve ser obtido a partir do repositório.}}
<!--{{Aviso|Qualquer ficheiro do material de apoio (classes da biblioteca '''po-uuilib'''), ou com nome coincidente, será removido do projecto antes de cada teste.}}-->
 
  
== Pacotes binários para instalação (openSUSE Leap 42.1) ==
+
== Pacotes binários para instalação ==
  
 
O manterial de apoio está disponível para instalação directa (não é necessário compilar) através do repositório:
 
O manterial de apoio está disponível para instalação directa (não é necessário compilar) através do repositório:
* http://download.opensuse.org/repositories/home:/d4vid:/co17/ (escolher distribuição ou usar openSUSE Leap 42.1, a oficial).
+
* https://download.opensuse.org/repositories/home:/d4vid:/co24/openSUSE_Tumbleweed/
 +
 
 +
Este repositório pode ser adicionado a um openSUSE previamente instalado através do comando:
 +
 
 +
<nowiki>zypper ar https://download.opensuse.org/repositories/home:/d4vid:/co24/openSUSE_Tumbleweed/ CO24</nowiki>
 +
<nowiki>zypper refresh</nowiki>
 +
 
 +
Uma vez adicionado o repositório, os pacotes acima podem ser instalados através dos comandos:
 +
 
 +
zypper install libcdk19-devel librts5-devel
  
 
{{Suggestion|Este material já está instalado na [[Compiladores/Projecto de Compiladores/Máquina Virtual|máquina virtual da disciplina]].}}
 
{{Suggestion|Este material já está instalado na [[Compiladores/Projecto de Compiladores/Máquina Virtual|máquina virtual da disciplina]].}}

Latest revision as of 16:55, 8 April 2024

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: 2024/04/29 17:00 (inicial); 2024/05/14 17:00 (intercalar); 2024/05/31 17:00 (final); 2024/05/31-2024/06/03-04 (teste prático).
  • Todas as entregas são cruciais para o bom desenvolvimento do projecto, sendo obrigatórias: a não realização de uma entrega 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.
  • Apenas se consideram para avaliação os projectos existentes no repositório oficial. Apenas se considera para avaliação o ramo 'main'.
  • 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 GIT
Apenas se consideram para avaliação os projectos existentes no repositório GIT oficial. Apenas se considera para avaliação o ramo main.

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.

Material de Apoio

O projecto, escrito em C++, deve ser desenvolvido considerando os princípios de desenvolvimento de compiladores, assim como os da boa programação com objectos e os aspectos de arquitectura dos padrões de desenho aplicáveis. Notar que esta tarefa está implicitamente facilitada pelo material de apoio, que condiciona o desenvolvimento do compilador.

O código presente nas bibliotecas de apoio (já instalado na máquina virtual) ao desenvolvimento do projecto é de uso obrigatório:

Notar que o repositório GIT já contém uma versão do projecto a desenvolver. Isto significa que antes de se começar a programar, o projecto deve ser obtido a partir do repositório.

Pacotes binários para instalação

O manterial de apoio está disponível para instalação directa (não é necessário compilar) através do repositório:

Este repositório pode ser adicionado a um openSUSE previamente instalado através do comando:

zypper ar https://download.opensuse.org/repositories/home:/d4vid:/co24/openSUSE_Tumbleweed/ CO24
zypper refresh

Uma vez adicionado o repositório, os pacotes acima podem ser instalados através dos comandos:

zypper install libcdk19-devel librts5-devel
Este material já está instalado na máquina virtual da disciplina.