<?xml version="1.0" encoding="UTF-8"?><xml><records><record><source-app name="Biblio" version="6.x">Drupal-Biblio</source-app><ref-type>32</ref-type><contributors><authors><author><style face="normal" font="default" size="100%">Pedro Martins</style></author></authors><secondary-authors><author><style face="normal" font="default" size="100%">João Paulo Fernandes</style></author><author><style face="normal" font="default" size="100%">João Alexandre Saraiva</style></author></secondary-authors></contributors><titles><title><style face="normal" font="default" size="100%">Embedding Attribute Grammars and their Extensions using Functional Zippers</style></title></titles><dates><year><style  face="normal" font="default" size="100%">2014</style></year></dates><urls><related-urls><url><style face="normal" font="default" size="100%">https://haslab.uminho.pt/sites/default/files/prmartins/files/phd.pdf</style></url></related-urls></urls><publisher><style face="normal" font="default" size="100%">University of Minho</style></publisher><pub-location><style face="normal" font="default" size="100%">Braga</style></pub-location><abstract><style face="normal" font="default" size="100%">&lt;p&gt;Gramáticas de atributos são um formalismo que permite exprimir algoritmos complexos de análise e transformação de programas, que tipicamente requerem várias travessias as árvores abstractas que os representam. As gramáticas de atributos foram extendidas com mecanismos que permitem referências, ordem superior e circularidade em atributos. Estas extensões permitem a implementação de mecanismos complexos e modulares de computações em linguagens.&lt;br /&gt;
Neste trabalho embebemos gramáticas de atributos e as suas extensões de forma elegante e simples, através de uma técnica chamada ”zippers”. Na nossa técnica, especificações de linguagens são definidas com um conjunto de componentes independentes de primeira ordem, que podem ser facilmente compostos para formar poderosos ambientes de processamento de linguagens.&lt;br /&gt;
Também desenvolvemos técnicas que descrevem transformações bidireccionais entre gramáticas. Definimos métodos de especificar transformações que, através de mecanismos completamente automáticos  são invertidas e estendidas e geram graméticas de atributos que especificam o nosso ambiente bidirecional.&lt;br /&gt;
Com esta tecnica foram implementados varios exemplos de especificacao e processamento de linguagens, alguns dos quais estao definidos e explicados neste documento. Da mesma forma, criamos e desenvolvemos uma linguagem de dominio especifico usando a nossa tecnica; linguagem essa que integramos num portal que permite a criação de analises de programas completamente configurada para servir os requisitos particulares de cada utilizador.&lt;/p&gt;
</style></abstract><work-type><style face="normal" font="default" size="100%">PhD Thesis</style></work-type></record></records></xml>