Use este identificador para citar ou linkar para este item: https://locus.ufv.br//handle/123456789/2647
Tipo: Dissertação
Título: Metaprogramação extensível para a linguagem XAJ (eXtensible AspectJ)
Título(s) alternativo(s): Extensible metaprogramming for the XAJ (eXtensible AspectJ) language
Autor(es): Pinheiro, Felipe da Silva
Primeiro Orientador: Iorio, Vladimir Oliveira Di
Primeiro coorientador: Oliveira, Alcione de Paiva
Segundo coorientador: Ferreira, Ricardo dos Santos
Primeiro avaliador: Bastos, Leacir Nogueira
Abstract: Linguagens de domínio específico orientadas a aspectos (DSALs) são linguagens projetadas especificamente para um domínio com funcionalidades orientadas a aspectos, gerando vantagens como produtividade e expressividade. Embarcar uma DSAL em uma linguagem de propósito geral orientada a aspectos pode apresentar algumas vantagens. Para conseguir isso, uma das técnicas utilizadas é a extensibilidade. A linguagem eXtensible AspectJ (XAJ ) é uma linguagem extensível baseada em AspectJ, principal linguagem orientada a aspectos. A definição de extensões para a linguagem é modular, sendo encapsulada em uma classe sintática, que permite definir a sintaxe e a semântica da nova construção, além de representá-la na árvore de sintaxe abstrata (AST ). A definição da semântica de uma nova construção se dá pela tradução para construções já conhecidas. Nesse ponto, a linguagem pode-se beneficiar das vantagens da metaprogramação. A metaprogramação é uma técnica de escrever programas que geram ou manipulam programas. Assim, com uma sintaxe próxima à sintaxe concreta da linguagem, obtém-se maior facilidade de entendimento. Com um mecanismo de metaprogramação extensível, pode-se utilizar construções definidas pelo usuário na definição de novas construções. Este trabalho apresenta um mecanismo de metaprogramação extensível para a linguagem XAJ, apresentando exemplo de uso e suas vantagens.
Domain specific aspect languages (DSALs) are languages specifically designed for a domain with aspect-oriented features, obtaining benefits such as productivity and expressiveness. To embed a DSAL in an aspect-oriented general purpose language may present some advantages. To achieve this, one of the techniques used is language extensibility. XAJ (eXtensible AspectJ ) is an extensible language based on AspectJ, the main aspect-oriented language. The definitions of extensions to the language are modular, being encapsulated in a syntax class. Syntax class allow users define the syntax and semantics of a new construction, and represent it in the abstract syntax tree (AST ). The definition of the semantics of a new construction is given by the translation to already known constructs. At this point, the language can benefit from the advantages of metaprogramming. Metaprogramming is a technique of writing programs that generate or manipulate other programs. Metaprogramming commands are very ease to understand especially when they use a syntax that is very similar to the concrete syntax of the language. With an extensible metaprogramming mechanism, user defined constructs can be used in the definitions of new constructs. This work presents an extensible metaprogramming mechanism for the XAJ language, presenting examples of usage and its advantages.
Palavras-chave: Metaprogramação
Extensibilidade
Orientação a aspectos
Metaprogramming
Extensibility
Aspect orientation
CNPq: CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Idioma: por
País: BR
Editor: Universidade Federal de Viçosa
Sigla da Instituição: UFV
Departamento: Metodologias e técnicas da Computação; Sistemas de Computação
Citação: PINHEIRO, Felipe da Silva. Extensible metaprogramming for the XAJ (eXtensible AspectJ) language. 2013. 45 f. Dissertação (Mestrado em Metodologias e técnicas da Computação; Sistemas de Computação) - Universidade Federal de Viçosa, Viçosa, 2013.
Tipo de Acesso: Acesso Aberto
URI: http://locus.ufv.br/handle/123456789/2647
Data do documento: 26-Fev-2013
Aparece nas coleções:Ciência da Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
texto completo.pdf1,94 MBAdobe PDFThumbnail
Visualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.