English
Related papers

Related papers: From Regexes to Parsing Expression Grammars

200 papers

Term rewriting systems have a simple syntax and semantics and facilitate proofs of correctness. However, they are not as popular in industry or academia as imperative languages. We define a term rewriting based abstract programming language…

Programming Languages · Computer Science 2020-07-08 David Plaisted , Lee Barnett

Ad hoc parsers are everywhere: they appear any time a string is split, looped over, interpreted, transformed, or otherwise processed. Every ad hoc parser gives rise to a language: the possibly infinite set of input strings that the program…

Software Engineering · Computer Science 2022-07-27 Michael Schröder , Jürgen Cito

Top-down parsing has received much attention recently. Parsing expression grammars (PEG) allows construction of linear time parsers using packrat algorithm. These techniques however suffer from problem of prefix hiding. We use alternative…

Formal Languages and Automata Theory · Computer Science 2012-05-10 Ondřej Bílka

Parsing is an important problem in computer science and yet surprisingly little attention has been devoted to its formal verification. In this paper, we present TRX: a parser interpreter formally developed in the proof assistant Coq,…

Logic in Computer Science · Computer Science 2015-07-01 Adam Koprowski , Henri Binsztok

Regular languages are closed under a wealth of formal language operators. Incorporating such operators in regular expressions leads to concise language specifications, but the transformation of such enhanced regular expressions to finite…

Formal Languages and Automata Theory · Computer Science 2016-05-04 Peter Thiemann

Formal languages let us define the textual representation of data with precision. Formal grammars, typically in the form of BNF-like productions, describe the language syntax, which is then annotated for syntax-directed translation and…

Software Engineering · Computer Science 2015-03-19 Luis Quesada , Fernando Berzal , Juan-Carlos Cubero

Regular expressions in an Automata Theory and Formal Languages course are mostly treated as a theoretical topic. That is, to some degree their mathematical properties and their role to describe languages is discussed. This approach fails to…

Programming Languages · Computer Science 2023-08-15 Marco T. Morazán

A document spanner models a program for Information Extraction (IE) as a function that takes as input a text document (string over a finite alphabet) and produces a relation of spans (intervals in the document) over a predefined schema. A…

Databases · Computer Science 2018-05-24 Liat Peterfreund , Balder ten Cate , Ronald Fagin , Benny Kimelfeld

I introduce a formalism for representing the syntax of recursively structured graph-like patterns. It does not use production rules, like a conventional graph grammar, but represents the syntactic structure in a more direct and declarative…

Formal Languages and Automata Theory · Computer Science 2025-04-25 Peter Fletcher

Formal languages let us define the textual representation of data with precision. Formal grammars, typically in the form of BNF-like productions, describe the language syntax, which is then annotated for syntax-directed translation and…

Formal Languages and Automata Theory · Computer Science 2015-01-15 Luis Quesada , Fernando Berzal , Juan-Carlos Cubero

Graphs are increasingly becoming ubiquitous as models for structured data. A generative model that closely mimics the structural properties of a given set of graphs has utility in a variety of domains. Much of the existing work require that…

Social and Information Networks · Computer Science 2019-02-25 Revanth Reddy , Sarath Chandar , Balaraman Ravindran

This paper presents an extension of the GLL parsing algorithm for context-free grammars which also supports parsing expression grammars with ordered choice and lookahead. The new PEGLL algorithm retains support for unordered choice, and…

Formal Languages and Automata Theory · Computer Science 2022-08-29 Aaron Moss , Brynn Harrington , Emily Hoppe

It is natural for probabilistic programs to use conditionals to express alternative substructures in models, and loops (recursion) to express repeated substructures in models. Thus, probabilistic programs with conditionals and recursion…

Programming Languages · Computer Science 2020-10-26 David Chiang , Chung-chieh Shan

The explosive rate of information growth and availability often makes it increasingly difficult to locate information pertinent to your needs. These problems are often compounded when keyword based search methodologies are not adequate for…

Information Retrieval · Computer Science 2008-10-10 Christopher M. Frenz

Logic programming is a flexible programming paradigm due to the use of predicates without a fixed data flow. To extend logic languages with the compact notation of functional programming, there are various proposals to map evaluable…

Programming Languages · Computer Science 2022-05-17 Michael Hanus

Programming-by-example (PBE) systems aim to alleviate the burden of programming. However, user-specified examples are often ambiguous, leaving multiple programs to satisfy the specification. Consequently, in most prior work, users have had…

Human-Computer Interaction · Computer Science 2023-08-15 Priyan Vaithilingam , Yewen Pu , Elena L. Glassman

Regular expressions with backreferences (regex, for short), as supported by most modern libraries for regular expression matching, have an NP-complete matching problem. We define a complexity parameter of regex, called active variable…

Formal Languages and Automata Theory · Computer Science 2024-02-09 Markus L. Schmid

This paper describes how to verify a parser for regular expressions in a functional programming language using predicate transformer semantics for a variety of effects. Where our previous work in this area focused on the semantics for a…

Logic in Computer Science · Computer Science 2020-05-05 Anne Baanen , Wouter Swierstra

Prefix parsing asks whether an input prefix can be extended to a complete string generated by a given grammar. In the weighted setting, it also provides prefix probabilities, which are central to context-free language modeling,…

Computation and Language · Computer Science 2026-05-05 Clemente Pasti , Andreas Opedal , Timothy J. O'Donnell , Ryan Cotterell , Tim Vieira

Stepwise refinement of algebraic specifications is a well known formal methodology for program development. However, traditional notions of refinement based on signature morphisms are often too rigid to capture a number of relevant…

Logic in Computer Science · Computer Science 2015-07-01 Manuel A. Martins , Alexandre Madeira , Luis S. Barbosa