hobbits-1.0: A library for canonically representing terms with binding

PortabilityGHC
Stabilityexperimental
Maintaineremw4@rice.edu

Data.Binding.Hobbits

Contents

Description

This library implements multi-bindings as described in the paper E. Westbrook, N. Frisby, P. Brauner, "Hobbits for Haskell: A Library for Higher-Order Encodings in Functional Programming Languages".

Synopsis

Values under multi-bindings

The Mb type modeling multi-bindings is the central abstract type of the library

Ancilliary modules

Type lists track the types of bound variables.

The SuperComb type models super-combinators, which are safe functions to apply under Mb.

The nuQQ quasiquoter allows safe pattern matching on Mb values.

A simple parser for Haskell patterns.

The Data.Binding.Hobbits.NuElim module allows elimination of bindings and multi-bindings; NOTE: this module is not covered in the "Hobbits for Haskell" paper.