Processamento de Linguagens e Compiladores

Historial:

[2008-03-13 (criado)]

Este documento descreve os temas disponíveis para a realização do primeiro projecto prático da disciplina em epígrafe.

Os alunos podem organizar-se em grupos de 1, 2 ou três elementos.

O projecto será apresentado e defendido durante a primeira semana de Abril.

Para a produção do relatório final os alunos deverão utilizar o LaTeX (existe um template na página da disciplina).


Índice

  1. Pré-processador para LaTeX
    1. Pré-processador para HTML
      1. LaTeX importer
        1. Wikipedia
          1. XML to dot

            Pré-processador para LaTeX

            [Voltar ao índice]

            Faça um pré-processador que aceite texto com marcação textual simples à sua escolha e gere texto LaTeX.

            A título de exemplo dê uma espreitadela à linguagem PPP, definida por José Carlos Ramalho.

            Use o manual do PPP como guia do que pode fazer. Em relação à sintaxe da sua linguagem tente basear-se no Wiki (investigue).

            Para realizar este projecto deverá realizar as seguintes etapas:

            Pré-processador para HTML

            [Voltar ao índice]

            Faça um pré-processador que aceite texto com marcação textual simples à sua escolha e gere texto HTML.

            A título de exemplo dê uma espreitadela à linguagem PPP, definida por José Carlos Ramalho.

            Use o manual do PPP como guia do que pode fazer. Em relação à sintaxe da sua linguagem tente basear-se no Wiki (investigue).

            Para realizar este projecto deverá realizar as seguintes etapas:

            LaTeX importer

            [Voltar ao índice]

            Faça um pré-processador que aceite texto latex com mais uma marcação especial umImporter,

            				\begin{um_import}{gnuplot}
            				...texto gnuplot....
            				\end{um_import}
            			

            e que tenha um segundo elemento elemento indicativo do processador a utilizar.

            Como resultado o preporcessador deverá:

            Sugestões: comece por considerar os formatos gnuplot e dot, guarde numa tabela os comando externos a executar para produzir a imagem PDF, de modo a facitar a definição de novos formatos de importação.

            Wikipedia

            [Voltar ao índice]

            Descarregue a Wikipedia-PT (versão XML) e extraia um dicionário PT-EN (ou PT-outraLingua). Cuidado que os tamanhos destes ficheiros são grandes!

            Para tal analise os separadores de entradas, os definidores de termo (<title>) os definidores de equivalente noutra língua ([[en:...]]), os definidores de categoria ([[categoria:...]] ou [[category:...]]).

            Analise que mais coisas pode facilmente extrair.

            No final construa um ficheiro com o seguinte aspecto:

            				PT pal1
            				EN pal1en
            				Categoria ...
            				
            				PT pal2
            				EN pal2en
            				Categoria ...
            			

            Ignore as entradas que não contenham pelo menos PT-EN.

            Alternativamente parta de outra Wikipedia-Lingua.xml.

            Alternativamente use o Wiktionary (com diferentes convenções).

            XML to dot

            [Voltar ao índice]

            Dado um ficheiro XML, cada vez que encontrar um elemento X com um subelemento Y, exemplo:

            				<X> ...
            					<Y> ... </Y>
            					...
            				</X>
            			

            gerar uma linha dot-graphviz de modo a que no final se possa oter uma árvore documental com a estrutura de elementos. No final gere a imagem respectiva com o comando dot.

            Exemplo de ficheiro dot a gerar:

            				strict  digraph g {
            				x -> y ;
            				a -> b ;
            				a -> x ;
            				x -> c ;
            				x -> c ;
            				}