[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS
Autor(a) principal: | |
---|---|
Data de Publicação: | 2011 |
Tipo de documento: | Outros |
Idioma: | por |
Título da fonte: | Repositório Institucional da PUC-RIO (Projeto Maxwell) |
Texto Completo: | https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@1 https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@2 http://doi.org/10.17771/PUCRio.acad.16815 |
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. |
id |
PUC_RIO-1_cd6031e1931df5736233cf8fc0d48083 |
---|---|
oai_identifier_str |
oai:MAXWELL.puc-rio.br:16815 |
network_acronym_str |
PUC_RIO-1 |
network_name_str |
Repositório Institucional da PUC-RIO (Projeto Maxwell) |
repository_id_str |
534 |
spelling |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS [en] CONVERTING REGEXES TO PEGS [pt] LINGUAGEM LUA[pt] LINGUAGENS DE PROGRAMACAO[pt] LINGUAGENS DE SCRIPT[en] LUA PROGRAMMING LANGUAGE[en] PROGRAMMING LANGUAGES[en] SCRIPTING LANGUAGES[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.[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.MAXWELLROBERTO IERUSALIMSCHYMARCELO OIKAWA2011-01-28info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/otherhttps://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@1https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@2http://doi.org/10.17771/PUCRio.acad.16815porreponame:Repositório Institucional da PUC-RIO (Projeto Maxwell)instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)instacron:PUC_RIOinfo:eu-repo/semantics/openAccess2017-09-14T00:00:00Zoai:MAXWELL.puc-rio.br:16815Repositório InstitucionalPRIhttps://www.maxwell.vrac.puc-rio.br/ibict.phpopendoar:5342017-09-14T00:00Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)false |
dc.title.none.fl_str_mv |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS [en] CONVERTING REGEXES TO PEGS |
title |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS |
spellingShingle |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS MARCELO OIKAWA [pt] LINGUAGEM LUA [pt] LINGUAGENS DE PROGRAMACAO [pt] LINGUAGENS DE SCRIPT [en] LUA PROGRAMMING LANGUAGE [en] PROGRAMMING LANGUAGES [en] SCRIPTING LANGUAGES |
title_short |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS |
title_full |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS |
title_fullStr |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS |
title_full_unstemmed |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS |
title_sort |
[pt] CONVERSÃO DE REGEXES PARA PARSING EXPRESSION GRAMMARS |
author |
MARCELO OIKAWA |
author_facet |
MARCELO OIKAWA |
author_role |
author |
dc.contributor.none.fl_str_mv |
ROBERTO IERUSALIMSCHY |
dc.contributor.author.fl_str_mv |
MARCELO OIKAWA |
dc.subject.por.fl_str_mv |
[pt] LINGUAGEM LUA [pt] LINGUAGENS DE PROGRAMACAO [pt] LINGUAGENS DE SCRIPT [en] LUA PROGRAMMING LANGUAGE [en] PROGRAMMING LANGUAGES [en] SCRIPTING LANGUAGES |
topic |
[pt] LINGUAGEM LUA [pt] LINGUAGENS DE PROGRAMACAO [pt] LINGUAGENS DE SCRIPT [en] LUA PROGRAMMING LANGUAGE [en] PROGRAMMING LANGUAGES [en] SCRIPTING LANGUAGES |
description |
[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. |
publishDate |
2011 |
dc.date.none.fl_str_mv |
2011-01-28 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/other |
format |
other |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@1 https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@2 http://doi.org/10.17771/PUCRio.acad.16815 |
url |
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@1 https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=16815@2 http://doi.org/10.17771/PUCRio.acad.16815 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
MAXWELL |
publisher.none.fl_str_mv |
MAXWELL |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da PUC-RIO (Projeto Maxwell) instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO) instacron:PUC_RIO |
instname_str |
Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO) |
instacron_str |
PUC_RIO |
institution |
PUC_RIO |
reponame_str |
Repositório Institucional da PUC-RIO (Projeto Maxwell) |
collection |
Repositório Institucional da PUC-RIO (Projeto Maxwell) |
repository.name.fl_str_mv |
Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO) |
repository.mail.fl_str_mv |
|
_version_ |
1814822578257133568 |