Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas

=== The development of computational resources and the rise of software industry brought the need to produce software more quickly and with higher complexity. With the increase on program size and complexity, severe problems of maintenance arise, because errors are more dificult to find and correct...

Full description

Bibliographic Details
Main Author: Leonardo Vieira dos Santos Reis
Other Authors: Roberto da Silva Bigonha
Format: Others
Language:Portuguese
Published: Universidade Federal de Minas Gerais 2010
Online Access:http://hdl.handle.net/1843/SLSS-85BKYB
id ndltd-IBICT-oai-bibliotecadigital.ufmg.br-MTD2BR-SLSS-85BKYB
record_format oai_dc
spelling ndltd-IBICT-oai-bibliotecadigital.ufmg.br-MTD2BR-SLSS-85BKYB2019-01-21T17:53:37Z Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas Leonardo Vieira dos Santos Reis Roberto da Silva Bigonha Vladimir Oliveira Di Iorio Marcelo de Almeida Maia Marco Tulio de Oliveira Valente Mariza Andrade da Silva Bigonha The development of computational resources and the rise of software industry brought the need to produce software more quickly and with higher complexity. With the increase on program size and complexity, severe problems of maintenance arise, because errors are more dificult to find and correct. So, it is important to create tools that make maintenance easier and improve the productivity of programmers. Domain-Specific Languages and Aspect-Oriented Programming can be combined to achieve these goals, building domain-specific aspect-oriented languages as extensions of languages such as AspectJ or AspectC. But building such extensions and embedding them on generalpurpose aspect languages is not an easy task. This work presents XAJ, an aspect-oriented extensible language based on AspectJ. XAJ provides features to build extensions and embedded domain-specific aspect-oriented languages. XAJ has a new compilation unit called syntax class, whichen capsulates the whole denition of a language extension, improving modularity and portability of extensions. Mechanisms for symbol import allow the definition of new grammar rules with local scope. Extensions in XAJ are portable because they are completely defined with the language itself, without the need of additional tools for the implementation. O desenvolvimento dos recursos computacionais e o surgimento da indústria de software trouxeram a necessidade de produzir softwares rapidamente e mais complexos. Com o aumento da complexidade dos softwares, surgiram problemas de manutenção, pois a complexidade e o tamanho dos programas aumentaram, o que dificulta encontrar e corrigir erros. Neste contexto, surgiu a necessidade de desenvolver ferramentas que aumentem a produtividade e facilitem a manutenção dos softwares. Programação Orientada a Aspectos e Linguagens de Domínio Específico são metodologias de programação que visam aumentar a produtividade e facilitar a manutenção de código. Noentanto criar extensões e embarcar linguagens de domínio específico orientadas a aspectos (união das duas técnicas citadas) em linguagens de propósito geral, e.g., AspectJ, AspectC, etc., não são tarefas simples. Este trabalho apresenta a linguagem XAJ, a primeira linguagem extensível orientada a aspectos que se tem conhecimento, a qual permite estender sua sintaxe concreta, possibilitando criar extensões e linguagens de domínio específico orientadas a aspectos embarcadas. XAJ tem uma nova unidade sintática, as classes sintáticas, que encapsulam as definições das extensões, aumentando a modularidade das mesmas. Novos mecanismos de importação são definidos para o uso das extensões, permitindo que sejam usadas em escopo local, não modificando globalmente a gramática da linguagem base. As extensões definidas na linguagem XAJ são portáveis, pois não são dependentes de ferramentas de implementação, sendo definidas na própria linguagem. 2010-03-12 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis http://hdl.handle.net/1843/SLSS-85BKYB por info:eu-repo/semantics/openAccess text/html Universidade Federal de Minas Gerais 32001010004P6 - CIÊNCIA DA COMPUTAÇÃO UFMG BR reponame:Biblioteca Digital de Teses e Dissertações da UFMG instname:Universidade Federal de Minas Gerais instacron:UFMG
collection NDLTD
language Portuguese
format Others
sources NDLTD
description === The development of computational resources and the rise of software industry brought the need to produce software more quickly and with higher complexity. With the increase on program size and complexity, severe problems of maintenance arise, because errors are more dificult to find and correct. So, it is important to create tools that make maintenance easier and improve the productivity of programmers. Domain-Specific Languages and Aspect-Oriented Programming can be combined to achieve these goals, building domain-specific aspect-oriented languages as extensions of languages such as AspectJ or AspectC. But building such extensions and embedding them on generalpurpose aspect languages is not an easy task. This work presents XAJ, an aspect-oriented extensible language based on AspectJ. XAJ provides features to build extensions and embedded domain-specific aspect-oriented languages. XAJ has a new compilation unit called syntax class, whichen capsulates the whole denition of a language extension, improving modularity and portability of extensions. Mechanisms for symbol import allow the definition of new grammar rules with local scope. Extensions in XAJ are portable because they are completely defined with the language itself, without the need of additional tools for the implementation. === O desenvolvimento dos recursos computacionais e o surgimento da indústria de software trouxeram a necessidade de produzir softwares rapidamente e mais complexos. Com o aumento da complexidade dos softwares, surgiram problemas de manutenção, pois a complexidade e o tamanho dos programas aumentaram, o que dificulta encontrar e corrigir erros. Neste contexto, surgiu a necessidade de desenvolver ferramentas que aumentem a produtividade e facilitem a manutenção dos softwares. Programação Orientada a Aspectos e Linguagens de Domínio Específico são metodologias de programação que visam aumentar a produtividade e facilitar a manutenção de código. Noentanto criar extensões e embarcar linguagens de domínio específico orientadas a aspectos (união das duas técnicas citadas) em linguagens de propósito geral, e.g., AspectJ, AspectC, etc., não são tarefas simples. Este trabalho apresenta a linguagem XAJ, a primeira linguagem extensível orientada a aspectos que se tem conhecimento, a qual permite estender sua sintaxe concreta, possibilitando criar extensões e linguagens de domínio específico orientadas a aspectos embarcadas. XAJ tem uma nova unidade sintática, as classes sintáticas, que encapsulam as definições das extensões, aumentando a modularidade das mesmas. Novos mecanismos de importação são definidos para o uso das extensões, permitindo que sejam usadas em escopo local, não modificando globalmente a gramática da linguagem base. As extensões definidas na linguagem XAJ são portáveis, pois não são dependentes de ferramentas de implementação, sendo definidas na própria linguagem.
author2 Roberto da Silva Bigonha
author_facet Roberto da Silva Bigonha
Leonardo Vieira dos Santos Reis
author Leonardo Vieira dos Santos Reis
spellingShingle Leonardo Vieira dos Santos Reis
Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
author_sort Leonardo Vieira dos Santos Reis
title Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
title_short Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
title_full Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
title_fullStr Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
title_full_unstemmed Especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
title_sort especialização de linguagens orientadas a aspectos baseada em extensibilidade de gramáticas
publisher Universidade Federal de Minas Gerais
publishDate 2010
url http://hdl.handle.net/1843/SLSS-85BKYB
work_keys_str_mv AT leonardovieiradossantosreis especializacaodelinguagensorientadasaaspectosbaseadaemextensibilidadedegramaticas
_version_ 1718844025680691200