Regenerate: A Language Generator for Extended Regular Expressions with an application to test case generation - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2018

Regenerate: A Language Generator for Extended Regular Expressions with an application to test case generation

Résumé

Regular expressions are part of every programmer's toolbox. They are used for a wide variety of language-related tasks and there are many algorithms for manipulating them. In particular, matching algorithms that detect whether a word belong to the language described by a regular expression is both a well explored area, yet one that still receives frequent contributions. However, there is no satisfactory solution for testing such matchers, which would require generating positive as well as negative examples for the language. We propose an algorithm to generate a language matched by a generalized regular expression with intersection and complement operators. The complement operator allows us to generate both positive and negative example words from a given regular expression. We implement our generator in Haskell and OCaml, and show that its performance is more than adequate for the purpose of testing.
Fichier principal
Vignette du fichier
gpce18.pdf (1.17 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01788827 , version 1 (09-05-2018)
hal-01788827 , version 2 (22-01-2019)

Identifiants

Citer

Gabriel Radanne, Peter Thiemann. Regenerate: A Language Generator for Extended Regular Expressions with an application to test case generation. GPCE 2018: 17th International Conference on Generative Programming: Concepts & Experiences, Nov 2018, Boston, United States. pp.202-214, ⟨10.1145/3278122.3278133⟩. ⟨hal-01788827v2⟩
180 Consultations
1230 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More