Lightweight Higher-Order Rewriting in Haskell
Konferensbidrag (offentliggjort, men ej förlagsutgivet), 2015

We present a generic Haskell library for expressing rewrite rules with a safe treatment of variables and binders. Both sides of the rules are written as typed EDSL expressions, which leads to syntactically appealing rules and hides the underlying term representation. Matching is defined as an instance of Miller's pattern unification, which makes for efficient execution when rules are applied in a bottom-up fashion. The restrictions of pattern unification are captured in the types of the library, and we show by example that the library is capable of expressing useful simplifications that might be used in a compiler.

EDSL

higher-order rewriting

pattern unification

Författare

Emil Axelsson

Chalmers, Data- och informationsteknik, Programvaruteknik

Andrea Vezzosi

Chalmers, Data- och informationsteknik, Datavetenskap

Trends in Functional Programming

Styrkeområden

Informations- och kommunikationsteknik

Ämneskategorier

Programvaruteknik

Datavetenskap (datalogi)