Reusable language specifications
Autor(a) principal: | |
---|---|
Data de Publicação: | 2013 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | LOCUS Repositório Institucional da UFV |
Texto Completo: | http://locus.ufv.br/handle/123456789/2657 |
Resumo: | O processo de construção de linguagens de programação não é uma tarefa fácil. Programadores gastam bastante tempo desenvolvendo novas linguagens a partir do zero. O suporte ao reuso de ferramentas para geração automática de analisadores sintáticos é essencial para este processo de desenvolvimento, contudo, grande parte das ferramentas não permitem definições totalmente reutilizáveis, uma vez que estas misturam elementos sintáticos e semânticos. Além disso, é importante que estas ferramentas ofereçam algumas facilidades, tais quais as presentes em Ambientes de Desenvolvimento Integrado (IDE, do inglês Integrated Development Environment), que auxiliam e agilizam o trabalho dos desenvolvedores de linguagens. Nessa dissertação, propomos uma abordagem que tenta separar elementos sintáticos e semânticos nas definições, e também permite aos programadores utilizar facilidades de uma IDE para construir a semântica de suas definições. Nós utilizamos essa abordagem para implementar uma solução para a ferramenta ANTLR, e validamos nossa proposta utilizando gramáticas ANTLR completas, reconstruindo-as, porém reutilizando uma mesma definição sintática. |
id |
UFV_7016fdc9f0380722b18c6f9ce28853d7 |
---|---|
oai_identifier_str |
oai:locus.ufv.br:123456789/2657 |
network_acronym_str |
UFV |
network_name_str |
LOCUS Repositório Institucional da UFV |
repository_id_str |
2145 |
spelling |
Amorim, Luís Eduardo de Souzahttp://lattes.cnpq.br/1363239338890868Oliveira, Alcione de Paivahttp://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4788574J0Ferreira, Ricardo dos Santoshttp://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4723626E5Iorio, Vladimir Oliveira Dihttp://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4784559J9Bigonha, Roberto da Silvahttp://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4783533H6Bigonha, Mariza Andrade da Silvahttp://lattes.cnpq.br/66601274718913212015-03-26T13:10:36Z2014-01-232015-03-26T13:10:36Z2013-08-30AMORIM, Luís Eduardo de Souza. Especificações reutilizáveis de linguagens. 2013. 130 f. Dissertação (Mestrado em Metodologias e técnicas da Computação; Sistemas de Computação) - Universidade Federal de Viçosa, Viçosa, 2013.http://locus.ufv.br/handle/123456789/2657O processo de construção de linguagens de programação não é uma tarefa fácil. Programadores gastam bastante tempo desenvolvendo novas linguagens a partir do zero. O suporte ao reuso de ferramentas para geração automática de analisadores sintáticos é essencial para este processo de desenvolvimento, contudo, grande parte das ferramentas não permitem definições totalmente reutilizáveis, uma vez que estas misturam elementos sintáticos e semânticos. Além disso, é importante que estas ferramentas ofereçam algumas facilidades, tais quais as presentes em Ambientes de Desenvolvimento Integrado (IDE, do inglês Integrated Development Environment), que auxiliam e agilizam o trabalho dos desenvolvedores de linguagens. Nessa dissertação, propomos uma abordagem que tenta separar elementos sintáticos e semânticos nas definições, e também permite aos programadores utilizar facilidades de uma IDE para construir a semântica de suas definições. Nós utilizamos essa abordagem para implementar uma solução para a ferramenta ANTLR, e validamos nossa proposta utilizando gramáticas ANTLR completas, reconstruindo-as, porém reutilizando uma mesma definição sintática.The process of building a programming language is not an easy task. Programmers spend a lot of time building nevv languages from scratch. The support for reuse from tools for automatic parser generation is essential to this development process, hovvever most tools do not provide fully reusable definitions as they often miX syntactic and semantic elements. Also, it is important that these tools offer some features, such as the ones from Integrated Development Environments, that help and faster the work of language developers. ln this dissertation, vve propose an approach that attempts to separate syntactic and semantic elements in definitions, and also allovvs programmers to use features from an IDE to build the semantics of definitions. We use this approach to implement a solution to the ANTLR tool, and vve validate it by using real ANTLR grammars, building the same grammars but reusing a same syntactic definition.Coordenação de Aperfeiçoamento de Pessoal de Nível Superiorapplication/pdfengUniversidade Federal de ViçosaMestrado em Ciência da ComputaçãoUFVBRMetodologias e técnicas da Computação; Sistemas de ComputaçãoANTLRGrammar reuseANTLRReutilização GramáticaCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOReusable language specificationsEspecificações reutilizáveis de linguagensinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/openAccessreponame:LOCUS Repositório Institucional da UFVinstname:Universidade Federal de Viçosa (UFV)instacron:UFVORIGINALtexto completo.pdfapplication/pdf5069249https://locus.ufv.br//bitstream/123456789/2657/1/texto%20completo.pdf606df1a5a2762e139eb4438275d6e65cMD51TEXTtexto completo.pdf.txttexto completo.pdf.txtExtracted texttext/plain157319https://locus.ufv.br//bitstream/123456789/2657/2/texto%20completo.pdf.txt92b6f2514a411a6f1a6d7c52c3d68f74MD52THUMBNAILtexto completo.pdf.jpgtexto completo.pdf.jpgIM Thumbnailimage/jpeg768https://locus.ufv.br//bitstream/123456789/2657/3/texto%20completo.pdf.jpg3fb0c8bbcf319d0ef59062f9e1fdc7f2MD53123456789/26572016-04-08 23:13:27.826oai:locus.ufv.br:123456789/2657Repositório InstitucionalPUBhttps://www.locus.ufv.br/oai/requestfabiojreis@ufv.bropendoar:21452016-04-09T02:13:27LOCUS Repositório Institucional da UFV - Universidade Federal de Viçosa (UFV)false |
dc.title.eng.fl_str_mv |
Reusable language specifications |
dc.title.alternative.por.fl_str_mv |
Especificações reutilizáveis de linguagens |
title |
Reusable language specifications |
spellingShingle |
Reusable language specifications Amorim, Luís Eduardo de Souza ANTLR Grammar reuse ANTLR Reutilização Gramática CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
title_short |
Reusable language specifications |
title_full |
Reusable language specifications |
title_fullStr |
Reusable language specifications |
title_full_unstemmed |
Reusable language specifications |
title_sort |
Reusable language specifications |
author |
Amorim, Luís Eduardo de Souza |
author_facet |
Amorim, Luís Eduardo de Souza |
author_role |
author |
dc.contributor.authorLattes.por.fl_str_mv |
http://lattes.cnpq.br/1363239338890868 |
dc.contributor.author.fl_str_mv |
Amorim, Luís Eduardo de Souza |
dc.contributor.advisor-co1.fl_str_mv |
Oliveira, Alcione de Paiva |
dc.contributor.advisor-co1Lattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4788574J0 |
dc.contributor.advisor-co2.fl_str_mv |
Ferreira, Ricardo dos Santos |
dc.contributor.advisor-co2Lattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4723626E5 |
dc.contributor.advisor1.fl_str_mv |
Iorio, Vladimir Oliveira Di |
dc.contributor.advisor1Lattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4784559J9 |
dc.contributor.referee1.fl_str_mv |
Bigonha, Roberto da Silva |
dc.contributor.referee1Lattes.fl_str_mv |
http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4783533H6 |
dc.contributor.referee2.fl_str_mv |
Bigonha, Mariza Andrade da Silva |
dc.contributor.referee2Lattes.fl_str_mv |
http://lattes.cnpq.br/6660127471891321 |
contributor_str_mv |
Oliveira, Alcione de Paiva Ferreira, Ricardo dos Santos Iorio, Vladimir Oliveira Di Bigonha, Roberto da Silva Bigonha, Mariza Andrade da Silva |
dc.subject.eng.fl_str_mv |
ANTLR Grammar reuse |
topic |
ANTLR Grammar reuse ANTLR Reutilização Gramática CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
dc.subject.por.fl_str_mv |
ANTLR Reutilização Gramática |
dc.subject.cnpq.fl_str_mv |
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
description |
O processo de construção de linguagens de programação não é uma tarefa fácil. Programadores gastam bastante tempo desenvolvendo novas linguagens a partir do zero. O suporte ao reuso de ferramentas para geração automática de analisadores sintáticos é essencial para este processo de desenvolvimento, contudo, grande parte das ferramentas não permitem definições totalmente reutilizáveis, uma vez que estas misturam elementos sintáticos e semânticos. Além disso, é importante que estas ferramentas ofereçam algumas facilidades, tais quais as presentes em Ambientes de Desenvolvimento Integrado (IDE, do inglês Integrated Development Environment), que auxiliam e agilizam o trabalho dos desenvolvedores de linguagens. Nessa dissertação, propomos uma abordagem que tenta separar elementos sintáticos e semânticos nas definições, e também permite aos programadores utilizar facilidades de uma IDE para construir a semântica de suas definições. Nós utilizamos essa abordagem para implementar uma solução para a ferramenta ANTLR, e validamos nossa proposta utilizando gramáticas ANTLR completas, reconstruindo-as, porém reutilizando uma mesma definição sintática. |
publishDate |
2013 |
dc.date.issued.fl_str_mv |
2013-08-30 |
dc.date.available.fl_str_mv |
2014-01-23 2015-03-26T13:10:36Z |
dc.date.accessioned.fl_str_mv |
2015-03-26T13:10:36Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
AMORIM, Luís Eduardo de Souza. Especificações reutilizáveis de linguagens. 2013. 130 f. Dissertação (Mestrado em Metodologias e técnicas da Computação; Sistemas de Computação) - Universidade Federal de Viçosa, Viçosa, 2013. |
dc.identifier.uri.fl_str_mv |
http://locus.ufv.br/handle/123456789/2657 |
identifier_str_mv |
AMORIM, Luís Eduardo de Souza. Especificações reutilizáveis de linguagens. 2013. 130 f. Dissertação (Mestrado em Metodologias e técnicas da Computação; Sistemas de Computação) - Universidade Federal de Viçosa, Viçosa, 2013. |
url |
http://locus.ufv.br/handle/123456789/2657 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Universidade Federal de Viçosa |
dc.publisher.program.fl_str_mv |
Mestrado em Ciência da Computação |
dc.publisher.initials.fl_str_mv |
UFV |
dc.publisher.country.fl_str_mv |
BR |
dc.publisher.department.fl_str_mv |
Metodologias e técnicas da Computação; Sistemas de Computação |
publisher.none.fl_str_mv |
Universidade Federal de Viçosa |
dc.source.none.fl_str_mv |
reponame:LOCUS Repositório Institucional da UFV instname:Universidade Federal de Viçosa (UFV) instacron:UFV |
instname_str |
Universidade Federal de Viçosa (UFV) |
instacron_str |
UFV |
institution |
UFV |
reponame_str |
LOCUS Repositório Institucional da UFV |
collection |
LOCUS Repositório Institucional da UFV |
bitstream.url.fl_str_mv |
https://locus.ufv.br//bitstream/123456789/2657/1/texto%20completo.pdf https://locus.ufv.br//bitstream/123456789/2657/2/texto%20completo.pdf.txt https://locus.ufv.br//bitstream/123456789/2657/3/texto%20completo.pdf.jpg |
bitstream.checksum.fl_str_mv |
606df1a5a2762e139eb4438275d6e65c 92b6f2514a411a6f1a6d7c52c3d68f74 3fb0c8bbcf319d0ef59062f9e1fdc7f2 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
LOCUS Repositório Institucional da UFV - Universidade Federal de Viçosa (UFV) |
repository.mail.fl_str_mv |
fabiojreis@ufv.br |
_version_ |
1801212866925166592 |