Mostrar registro simples

dc.creatorCardoso, Diogo João
dc.date.accessioned2019-04-26T12:26:42Z
dc.date.available2019-04-26T12:26:42Z
dc.date.issued2018-07-13
dc.identifier.urihttp://repositorio.ufsm.br/handle/1/16315
dc.description.abstractThe presence of reactive programming has been more common in current systems, one of the highlights of its use is the management of input data streams. In the reactive programming paradigm, a new value for the input stream can be seen as an event, which may cause changes in the program, so it needs to be properly propagated. In this work is discussed the creation of a reactive programming language implementing the object-oriented paradigm (OO), allowing manipulation of classes and objects, where reactive expressions and data are modeled as an extension for Featherweight Java (FJ). This language is formally defined through the operation semantics, creating the opportunity to be implemented in any language that provides closures. An interpreter for the formalized language is also presented, that includes lexical, syntactic and semantic analysis, with its focus on the type system to embed reactive programming concepts in a classical language, demonstrating the interaction between the two reviewed paradigms.eng
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESpor
dc.languageporpor
dc.publisherUniversidade Federal de Santa Mariapor
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 International*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/*
dc.subjectProgramação reativapor
dc.subjectProgramação orientada a objetospor
dc.subjectProgramação funcionalpor
dc.subjectFormalização de linguagenspor
dc.subjectInterpretadorpor
dc.subjectReactive programmingeng
dc.subjectObject-oriented programmingeng
dc.subjectFunctional programmingeng
dc.subjectFormal languageseng
dc.subjectInterpretereng
dc.titleASYNCRFJ: uma abordagem assíncrona à programação orientada a objeto reativapor
dc.title.alternativeASYNCRFJ: an asynchronous approach to reactive object-oriented programmingeng
dc.typeDissertaçãopor
dc.description.resumoA utilização de programação reativa tem se tornado cada vez mais comum em sistemas atuais, se destacando principalmente por conseguir manipular fluxos de dados de entrada. No paradigma de programação reativa, um novo valor no fluxo de dado pode ser visto como um evento, e um evento pode causar mudanças no programa, que devem ser devidamente propagadas. Nesta dissertação é discutida a criação de uma linguagem de programação reativa que utiliza-se do paradigma de orientação a objetos (OO), fornecendo a possibilidade de manipular classes e objetos, onde expressões e dados reativos são modelados como uma extensão da proposta Featherweight Java (FJ). Esta extensão é definida formalmente através da apresentação de sua semântica operacional, podendo ser implementada em qualquer linguagem de programação que forneça o mecanismo de closures. A formalização desta linguagem permitiu a criação de um interpretador, que implementa as fases de análise léxica, sintática e semântica, com foco especial no tratamento do sistema de tipos para embutir conceitos de computação reativa em uma linguagem clássica, demonstrando a interação entre os dois paradigmas de programação estudados.por
dc.contributor.advisor1Vizzotto, Juliana Kaizer
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/4384914116033913por
dc.contributor.referee1Piveta, Eduardo Kessler
dc.contributor.referee1Latteshttp://lattes.cnpq.br/8687196768910831por
dc.contributor.referee2Du Bois, André Rauber
dc.contributor.referee2Latteshttp://lattes.cnpq.br/3277487290886063por
dc.creator.Latteshttp://lattes.cnpq.br/7289414573814560por
dc.publisher.countryBrasilpor
dc.publisher.departmentCiência da Computaçãopor
dc.publisher.initialsUFSMpor
dc.publisher.programPrograma de Pós-Graduação em Ciência da Computaçãopor
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpor
dc.publisher.unidadeCentro de Tecnologiapor


Arquivos deste item

Thumbnail
Thumbnail

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Attribution-NonCommercial-NoDerivatives 4.0 International
Exceto quando indicado o contrário, a licença deste item é descrito como Attribution-NonCommercial-NoDerivatives 4.0 International