Macros como mecanismos de abstração em transformações textuais.

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: Cereda, Paulo Roberto Massa
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Biblioteca Digitais de Teses e Dissertações da USP
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://www.teses.usp.br/teses/disponiveis/3/3141/tde-24092018-085556/
Resumo: Abstração é um processo que consiste em encontrar similaridades em artefatos e omitir detalhes desnecessários em um particular momento. Em geral, tal processo resulta em simplificação, substituindo situações do mundo real complexas e excessivamente detalhadas por modelos compreensíveis que admitem resolução. Na computação, existem estilos de programação que fornecem ao programador uma visão particular sobre a organização e execução de um programa. Cada estilo viabiliza formas de representação e tratamento de abstrações aderentes ao conjunto de conceitos, valores, percepções e práticas compartilhadas por uma comunidade. Em particular, o fenômeno de reescrita de termos viabiliza transformações entre espaços de abstração. Como instância de tal fenômeno, macros constituem um padrão sintático que especifica uma transformação simbólica ou algorítmica sobre uma sequência de símbolos associada. Na ocorrência de uma instância de tal padrão sintático, este é substituído pela aplicação de sua transformação correspondente. Dada a importância da disponibilização de estruturas de representação mais convenientes às necessidades dos usuários, o objetivo principal desta tese é tratar da utilização de sistemas de reescrita como mecanismos de abstração em transformações textuais. Para tal, técnicas de projeto e aspectos de implementação de tais sistemas são apresentados, com enfoque em macros.