Reusable language specifications

Detalhes bibliográficos
Autor(a) principal: Amorim, Luís Eduardo de Souza
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