Lightweight Higher-Order Rewriting in Haskell
Paper in proceedings, 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 higher-order pattern unification and has the same complexity as first-order matching. 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

pattern unification

higher-order rewriting

Author

Emil Axelsson

Chalmers, Computer Science and Engineering (Chalmers), Software Technology (Chalmers)

Andrea Vezzosi

Chalmers, Computer Science and Engineering (Chalmers), Computing Science (Chalmers)

Lecture Notes in Computer Science

0302-9743 (ISSN)

Vol. 9547 1-21

Areas of Advance

Information and Communication Technology

Subject Categories

Software Engineering

Computer Science

DOI

10.1007/978-3-319-39110-6_1

ISBN

978-3-319-39110-6

More information

Created

10/7/2017