Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs
Programming techniques based on the Imperative Paradigm (PI) and Declarative Paradigm (PD) have limitations such as redundancies and couplings, which may hamper the development and execution of software. In order to solve some of the deficiencies of these programming paradigms, the Notification Orie...
Autor principal: | Santos, Leonardo Araujo |
---|---|
Formato: | Dissertação |
Idioma: | Português |
Publicado em: |
Universidade Tecnológica Federal do Paraná
2017
|
Assuntos: | |
Acesso em linha: |
http://repositorio.utfpr.edu.br/jspui/handle/1/2778 |
Tags: |
Adicionar Tag
Sem tags, seja o primeiro a adicionar uma tag!
|
id |
riut-1-2778 |
---|---|
recordtype |
dspace |
spelling |
riut-1-27782017-12-17T00:34:43Z Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs Language and compiler for the notification-oriented paradigm: advances to facilitate coding and its validation in a robot control soccer application Santos, Leonardo Araujo Simão, Jean Marcelo http://lattes.cnpq.br/3593420323268103 Fabro, João Alberto http://lattes.cnpq.br/6841185662777161 Stadzisz, Paulo Cézar Maidl, Andre Murbach Oliveira, Andre Schneider de Linhares, Robson Ribeiro Robótica Robôs Framework (Arquivo de computador) C++ (Linguagem de programação de computador) Engenharia elétrica Robotics Robots Framework (Computer program) C++ (Computer program language) Electric engineering CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO Engenharia Elétrica Programming techniques based on the Imperative Paradigm (PI) and Declarative Paradigm (PD) have limitations such as redundancies and couplings, which may hamper the development and execution of software. In order to solve some of the deficiencies of these programming paradigms, the Notification Oriented Paradigm (NOP) has emerged, which presents a new way of performing logical/cause revisions. This is accomplished through small, reactive and decoupled computational entities that collaborate through timely notifications. The NOP was originally materialized in the form of a Framework, implemented in the C++ programming language. It is designed to provide high-level interfaces that facilitate the development of NOP applications. However, internally the Framework has data structures that induce an overhead of computational processing and consequent damage to the performance of the applications. In order to address this problem, a specific programming language for the NOP, named LingPON, and its compiler have been created recently. However, only a few, simple, NOP applications were created using LingPON, which does not allow its more effective consolidation. This is essentially for some limitations that exist in the current language version, as well as difficulties in developing complex applications that solve real problems. In this sense, this work proposes a new version of LingPON (version 1.2), with new features such as aggregations of entities, allowing an easier and more direct development of complex applications. The advances are validated by developing a more complex software using LingPON (version 1.0 and 1.2). The software in question deals with the autonomous control for soccer playing robots (Robocup). In the end, software developed using LingPON is compared quantitatively and qualitatively with equivalent software developed using the NOP 2.0 Framework and other equivalent software developed with the Object Oriented Paradigm using a C++ programming language (this one programmed by others). The results show that the use of the new version of LingPON, presented here, allows an easier development of NOP applications. Also, that the developed application was easier to maintain when compared to the PI application. These results, with the development of a known complex application using a new version of LingPON, allows the demonstration of the properties expected in the NOP theory itself. As técnicas de programação baseadas no Paradigma Imperativo (PI) e Paradigma Declarativo (PD) apresentam limitações como redundâncias e acoplamentos, os quais podem prejudicar desenvolvimento e execução de softwares. Visando solucionar algumas das deficiências desses paradigmas de programação surgiu o Paradigma Orientado a Notificações (PON), o qual apresenta uma nova forma de realizar avaliações lógico-causais. Isto é realizado através de entidades computacionais de pequeno porte, reativas e desacopladas que colaboram por meio de notificações pontuais. O PON foi originalmente materializado na forma de um Framework, implementado na linguagem de programação C++. Este foi projetado de forma a fornecer interfaces de alto nível que facilitassem o desenvolvimento de aplicações PON. Entretanto, internamente o Framework usa estruturas de dados que induzem a uma sobrecarga de processamento computacional e consequente prejuízo ao desempenho das aplicações. Visando solucionar esse problema, uma linguagem de programação específica para o PON, nomeada LingPON, e respectivo compilador foram criados recentemente. Entretanto, em um primeiro esforço, apenas algumas poucas e simples aplicações PON foram criadas utilizando a LingPON, fato este que não permite sua consolidação mais efetiva. Isso se deve principalmente a algumas limitações que existem na atual versão da linguagem, as quais dificultam o desenvolvimento de aplicações complexas que solucionem problemas realísticos. Neste sentido, este trabalho propõe uma nova versão da LingPON (versão 1.2), baseada em agregações de entidades, na qual é possível criar aplicações complexas de forma mais fácil e direta. Os avanços são validados por meio do desenvolvimento de um \textit{software}, utilizando a LingPON (versão 1.0 e 1.2), para algo reconhecidamente complexo. O \textit{software em questão trata do controle para partidas de futebol de robôs (Robocup). Ao final, o software desenvolvido utilizando o LingPON é comparado quantitativamente e qualitativamente com um software equivalente desenvolvido o utilizando o Framework PON 2.0 e outro software equivalente desenvolvido com o Paradigma Orientado a Objetos utilizando a linguagem de programação C++ (este programado por outrem). Os resultados obtidos mostraram que ao utilizar a nova versão da LingPON, apresentada neste trabalho, é possível desenvolver aplicações PON de forma mais simples e com menor esforço. Ademais, as aplicações PON desenvolvidas apresentaram maior facilidade de manutenção quando comparadas a aplicação PI. Esses resultados obtidos, com o desenvolvimento de uma aplicação conhecidamente complexa utilizando a nova versão da LingPON, vêm ao encontro de colaborar na demonstração de propriedades previstas na própria teoria do PON. 2017-12-17T00:34:43Z 2017-12-17T00:34:43Z 2017-03-31 masterThesis SANTOS, Leonardo Araujo. Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs. 2017. 274 f. Dissertação (Mestrado em Engenharia Elétrica e Informática Industrial) - Universidade Tecnológica Federal do Paraná, Curitiba, 2017. http://repositorio.utfpr.edu.br/jspui/handle/1/2778 por openAccess application/pdf Universidade Tecnológica Federal do Paraná Curitiba Brasil Programa de Pós-Graduação em Engenharia Elétrica e Informática Industrial UTFPR |
institution |
Universidade Tecnológica Federal do Paraná |
collection |
RIUT |
language |
Português |
topic |
Robótica Robôs Framework (Arquivo de computador) C++ (Linguagem de programação de computador) Engenharia elétrica Robotics Robots Framework (Computer program) C++ (Computer program language) Electric engineering CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO Engenharia Elétrica |
spellingShingle |
Robótica Robôs Framework (Arquivo de computador) C++ (Linguagem de programação de computador) Engenharia elétrica Robotics Robots Framework (Computer program) C++ (Computer program language) Electric engineering CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO Engenharia Elétrica Santos, Leonardo Araujo Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs |
description |
Programming techniques based on the Imperative Paradigm (PI) and Declarative Paradigm (PD) have limitations such as redundancies and couplings, which may hamper the development and execution of software. In order to solve some of the deficiencies of these programming paradigms, the Notification Oriented Paradigm (NOP) has emerged, which presents a new way of performing logical/cause revisions. This is accomplished through small, reactive and decoupled computational entities that collaborate through timely notifications. The NOP was originally materialized in the form of a Framework, implemented in the C++ programming language. It is designed to provide high-level interfaces that facilitate the development of NOP applications. However, internally the Framework has data structures that induce an overhead of computational processing and consequent damage to the performance of the applications. In order to address this problem, a specific programming language for the NOP, named LingPON, and its compiler have been created recently. However, only a few, simple, NOP applications were created using LingPON, which does not allow its more effective consolidation. This is essentially for some limitations that exist in the current language version, as well as difficulties in developing complex applications that solve real problems. In this sense, this work proposes a new version of LingPON (version 1.2), with new features such as aggregations of entities, allowing an easier and more direct development of complex applications. The advances are validated by developing a more complex software using LingPON (version 1.0 and 1.2). The software in question deals with the autonomous control for soccer playing robots (Robocup). In the end, software developed using LingPON is compared quantitatively and qualitatively with equivalent software developed using the NOP 2.0 Framework and other equivalent software developed with the Object Oriented Paradigm using a C++ programming language (this one programmed by others). The results show that the use of the new version of LingPON, presented here, allows an easier development of NOP applications. Also, that the developed application was easier to maintain when compared to the PI application. These results, with the development of a known complex application using a new version of LingPON, allows the demonstration of the properties expected in the NOP theory itself. |
format |
Dissertação |
author |
Santos, Leonardo Araujo |
author_sort |
Santos, Leonardo Araujo |
title |
Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs |
title_short |
Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs |
title_full |
Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs |
title_fullStr |
Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs |
title_full_unstemmed |
Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs |
title_sort |
linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs |
publisher |
Universidade Tecnológica Federal do Paraná |
publishDate |
2017 |
citation |
SANTOS, Leonardo Araujo. Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs. 2017. 274 f. Dissertação (Mestrado em Engenharia Elétrica e Informática Industrial) - Universidade Tecnológica Federal do Paraná, Curitiba, 2017. |
url |
http://repositorio.utfpr.edu.br/jspui/handle/1/2778 |
_version_ |
1805298040042422272 |
score |
10,814766 |