Summary: | Made available in DSpace on 2014-06-12T15:58:53Z (GMT). No. of bitstreams: 2
arquivo4739_1.pdf: 546621 bytes, checksum: 436ff68296454e12baa513372b9a2fe8 (MD5)
license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5)
Previous issue date: 2003 === Semântica de ações, um formalismo para especificação de linguagens de programação,
define um conjunto padrão de operadores que descrevem conceitos comuns encontrados
em linguagens de programação. Estes operadores facilitam a especificação de linguagens
de programação porque eles liberam o projetista de linguagens da manipulação de
definições complexas usadas para descrevê-las.
Entretanto, as especificações em semântica de ações não foram projetadas para
serem reusadas ou estendidas. De fato, copiar/colar especificações é o único caminho
para reutilizar semânticas de linguagens de programação, ou seja, é extremamente
ineficiente e perigosa, no sentido de não produzir uma especificação totalmente
confiável, seja por funções semânticas extremamente restritas à linguagem, seja por
diferenças sintáticas mínimas que impedem uma integração adequada.
Também devemos considerar o fato de que a maioria das linguagens existentes
apresentam uma grande semelhança conceitual do ponto de vista semântico, uma vez que
o desenvolvimento de novas linguagens de programação geralmente é influenciado por
linguagens previamente existente.
Portanto, o objetivo deste trabalho é, através do uso da semântica de ações
baseada em componentes, uma técnica que permite melhorar a reutilização de
especificações em semântica de ações, definir componentes semânticos para estruturas
sintáticas abstratas, capazes de representar conceitos de linguagens de programação
separados pelos diversos paradigmas de linguagens de programação existentes, e
organizados de forma hierárquica garantindo assim um alto grau de reutilização
semântica.
Como resultados, produzimos uma biblioteca de componentes semânticos,
formada pelo agrupamento de componentes semânticos capazes de representar conceitos
de linguagens de expressões, imperativas, funcionais e orientada a objetos; e projetamos
uma linguagem multiparadigma denominada EIFOO, formada pelo agrupamento dos
componentes semânticos especificados em cada um dos paradigmas abordados neste
trabalho
|