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
Article dans revue scientifique avec comité de lecture.First-order languages based on rewrite rules ...
Automatic code generators often contain pattern matchers that are based on tree grammars. In this wo...
International audienceWe introduce a new framework of algebraic pure type systems in which we consid...
We present a generic Haskell library for expressing rewrite rules with a safe treatment of variables...
Higher-order rewriting is a symbiosis of two classical rewriting paradigms: the Lambda calculus, whi...
Abstract. We present the meta-theory behind the code generation fa-cilities of Isabelle/HOL. To brid...
We present a simple, practical algorithm for higher-order matching in the context of automatic progr...
We extend Haskell with regular expression patterns. Regular expression patterns provide means for ma...
AbstractWe propose three extensions to patterns and pattern matching in Haskell. The first, pattern ...
We propose an extension to patterns and pattern matching in Haskell. The idea is to o er the option ...
Term rewriting has proven to be an important technique in theorem proving. In this paper, we illustr...
Haskell is a functional programming language with nominally non-strict semantics, implying that eval...
Previous implementations of generic rewriting libraries have a number of limitations: they require t...
Abstract The Haskell String type is notoriously inefficient. We introduce a new data type, ByteStrin...
We present a Haskell library for first-order term rewriting covering basic operations on positions, ...
Article dans revue scientifique avec comité de lecture.First-order languages based on rewrite rules ...
Automatic code generators often contain pattern matchers that are based on tree grammars. In this wo...
International audienceWe introduce a new framework of algebraic pure type systems in which we consid...
We present a generic Haskell library for expressing rewrite rules with a safe treatment of variables...
Higher-order rewriting is a symbiosis of two classical rewriting paradigms: the Lambda calculus, whi...
Abstract. We present the meta-theory behind the code generation fa-cilities of Isabelle/HOL. To brid...
We present a simple, practical algorithm for higher-order matching in the context of automatic progr...
We extend Haskell with regular expression patterns. Regular expression patterns provide means for ma...
AbstractWe propose three extensions to patterns and pattern matching in Haskell. The first, pattern ...
We propose an extension to patterns and pattern matching in Haskell. The idea is to o er the option ...
Term rewriting has proven to be an important technique in theorem proving. In this paper, we illustr...
Haskell is a functional programming language with nominally non-strict semantics, implying that eval...
Previous implementations of generic rewriting libraries have a number of limitations: they require t...
Abstract The Haskell String type is notoriously inefficient. We introduce a new data type, ByteStrin...
We present a Haskell library for first-order term rewriting covering basic operations on positions, ...
Article dans revue scientifique avec comité de lecture.First-order languages based on rewrite rules ...
Automatic code generators often contain pattern matchers that are based on tree grammars. In this wo...
International audienceWe introduce a new framework of algebraic pure type systems in which we consid...