Semântica denotacional escalável de linguagens imperativas

Carregando...
Imagem de Miniatura

Título da Revista

ISSN da Revista

Título de Volume

Editor

Universidade Federal de Minas Gerais

Descrição

Tipo

Dissertação de mestrado

Título alternativo

Primeiro orientador

Membros da banca

Fernando Magno Quintao Pereira
Andre Luís de Medeiros Santos

Resumo

Este trabalho de dissertação aborda uma nova solução para o problema de escalabilidade da Semântica Denotacional, intitulada Semântica Denotacional Baseada em Componentes. Essa técnica utiliza uma biblioteca de componentes de semântica denotacionalque encapsulam conceitos fundamentais e recorrentes de linguagens de programação imperativas. Uma das principais funções da biblioteca é remover das equações semânticas a dependência aparente de contexto das construções. Dessa forma, as definições semânticassão definidas pelo mapeamento direto entre as construções da sintaxe abstrata de uma linguagem e as combinações de componentes que modelam sua semântica. O fluxo de informações de contexto é encapsulado pelos componentes. Como principais contribuições do trabalho, podem-se citar: definição de uma nova metodologia baseada em componentes para obtenção de escalabilidade e reúso em definições de semântica denotacional; a implementação de um ambiente de desenvolvimento para a metodologia, o qual permite a escrita de protótipos de interpretadores para linguagens definidas; identificação e organização dos conceitos fundamentais e recorrentesdas linguagens de programação imperativas em uma biblioteca de componentes de definição semântica; abstração do contexto em equações semânticas denotacionais.

Abstract

This dissertation presents a new methodology for the scalability problem in Denotational Semantics, named Component Based Denotational Semantics. This work uses a library of denotational semantics components, which encapsulate fundamental and recurring concepts of imperative programming languages. One of the main objectives of the library is to remove the apparent dependency on the context of constructs in the composition of their denotations. Thus, semantic definitions map the constructs of the abstract syntax of a language directly to the combination of components which model its semantics. The components encapsulate the flow of context information.The main contributions of this work are: the definition of a new methodology based on components for the writing of scalable definitions of denotational semantics that promote reuse; the implementation of a development environment for applying the methodology, which generates interpreter prototypes for a language; organization of the fundamental and recurring concepts of imperative programming languages in a library of semantic definition components; abstraction of context in denotational semantics equations.

Assunto

Semântica, Linguagens de programação (Computadores), Computação

Palavras-chave

Ciência da Computação

Citação

Departamento

Curso

Endereço externo

Avaliação

Revisão

Suplementado Por

Referenciado Por