Título
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS
Título
[en] CONVERTING REGEXES TO PEGS
Autor
[pt] MARCELO OIKAWA
Vocabulário
[pt] LINGUAGEM LUA
Vocabulário
[pt] LINGUAGENS DE PROGRAMACAO
Vocabulário
[pt] LINGUAGENS DE SCRIPT
Vocabulário
[en] LUA PROGRAMMING LANGUAGE
Vocabulário
[en] PROGRAMMING LANGUAGES
Vocabulário
[en] SCRIPTING LANGUAGES
Resumo
[pt] Expressões regulares são um formalismo utilizado para descrever linguagens
regulares e compõem a base de diversas bibliotecas de casamento de padrão.
No entanto, existem determinados padrões úteis que são complexos ou
impossíveis de serem descritos com expressões regulares puras. Devido a
essas limitações, linguagens de script modernas disponibilizam bibliotecas
de casamento de padrões baseadas em regexes, isto é, extensões de expressões
regulares compostas, principalmente, por construções ad-hoc que focam em
problemas específicos. Apesar de serem muito úteis na prática, os regexes
possuem implementações complexas e distantes do formalismo original
de expressões regulares. Parsing Expression Grammars (PEG) são uma
alternativa formal para reconhecer padrões e possuem mais expressividade
que expressões regulares sem necessitar de contruções ad-hoc. O objetivo
deste trabalho é estudar formas de conversão de regexes para PEGs.
Para isso, estudamos as implementações atuais de regexes e mostramos a
conversão de algumas construções para PEGs. Por fim, apresentamos uma
implementação da conversão de regexes para PEGs para a linguagem Lua.
Resumo
[en] Regular expressions are a formalism used to describe regular languages
and form the basis of several pattern-matching libraries. However, many
interesting patterns either are difficult to describe or cannot be described
by pure regular expressions. Because of these limitations, modern scripting
languages have pattern matching libraries based on regexes, ie, extensions
of regular expressions mainly composed by a set of ad-hoc constructions
that focus on specific problems. Although very useful in practice, these
implementations are complex and distant from the original formalism of
regular expressions. Parsing Expression Grammars (PEG) are a formal
alternative to recognize patterns and it is much more expressive than pure
regular expressions and does not need use ad-hoc constructions. The goal of
this work is to study the convertion of regexes to PEGs. To accomplish this
task, we studied the current implementations of regexes and show how to
convert some constructions to PEGs. Finally, we present an implementation
that convert regexes to PEGs for the Lua language.
Orientador(es)
ROBERTO IERUSALIMSCHY
Banca
LUIZ HENRIQUE DE FIGUEIREDO
Banca
ROBERTO IERUSALIMSCHY
Banca
FABIO MASCARENHAS DE QUEIROZ
Catalogação
2011-01-28
Apresentação
2010-08-25
Tipo
[pt] TEXTO
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Idioma(s)
PORTUGUÊS
Referência [pt]
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@1
Referência [en]
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@2
Referência DOI
https://doi.org/10.17771/PUCRio.acad.16815
Arquivos do conteúdo
CAPA, AGRADECIMENTOS, RESUMO, ABSTRACT, SUMÁRIO E LISTA DE FIGURAS PDF CAPÍTULO 1 PDF CAPÍTULO 2 PDF CAPÍTULO 3 PDF CAPÍTULO 4 PDF CAPÍTULO 5 PDF CAPÍTULO 6 PDF REFERÊNCIAS BIBLIOGRÁFICAS PDF