Verification of High-Level Transformations with Inductive Refinement Types - Archive ouverte HAL Access content directly
Conference Papers Year :

Verification of High-Level Transformations with Inductive Refinement Types

(1) , (2) , (3) , (4)


High-level transformation languages like Rascal include expressive features for manipulating large abstract syntax trees: first-class traversals, expressive pattern matching, backtrack-ing and generalized iterators. We present the design and implementation of an abstract interpretation tool, Rabit, for verifying inductive type and shape properties for transformations written in such languages. We describe how to perform abstract interpretation based on operational semantics, specifically focusing on the challenges arising when analyzing the expressive traversals and pattern matching. Finally, we evaluate Rabit on a series of transformations (normaliza-tion, desugaring, refactoring, code generators, type inference, etc.) showing that we can effectively verify stated properties. CCS Concepts • Software and its engineering → General programming languages; • Social and professional topics → History of programming languages;
Fichier principal
Vignette du fichier
gpce18-Al-Sibahi.pdf (995.22 Ko) Télécharger le fichier
Vignette du fichier
gpce-submission.pdf (880.42 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01898058 , version 1 (19-10-2018)



Ahmad Salim Al-Sibahi, Aleksandar S. Dimovski, Thomas Jensen, Andrzej Wasowski. Verification of High-Level Transformations with Inductive Refinement Types. GPCE 2018 - 17th International Conference on Generative Programming: Concepts & Experience, Nov 2018, Boston, United States. pp.147-160, ⟨10.1145/3278122.3278125⟩. ⟨hal-01898058⟩
334 View
215 Download



Gmail Facebook Twitter LinkedIn More