Papers
Topics
Authors
Recent
2000 character limit reached

Idris TyRE: a dependently typed regex parser

Published 8 May 2023 in cs.PL | (2305.04480v1)

Abstract: Regular expressions -- regexes -- are widely used not only for validating, but also for parsing textual data. Generally, regex parsers output a loose structure, e.g. an unstructured list of matches, leaving it up to the user to validate the output's properties and transform it into the desired structure. Since the regex itself carries information about the structure, this design leads to unnecessary repetition. Radanne introduced typed regexes -- TyRE -- a type-indexed combinator layer that can be added on top of an existing regex engine. We extend Radanne's design, and implement a parser which maintains type-safety throughout all layers: the user-facing regexes; their internal, desugared, representation; its compiled finite-state automaton; and the automaton's associated instruction-set for constructing the parse-trees. We implemented TyRE in the dependently-typed language Idris 2.

Summary

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Authors (2)

Collections

Sign up for free to add this paper to one or more collections.