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

PortabilityGHC
Stabilityexperimental
Maintaineremw4@rice.edu
Safe HaskellSafe-Infered

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

Closed terms

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

Pattern-matching multi-bindings and closed terms

The nuP quasiquoter allows safe pattern matching on Mb values. superCombP is similar.

Ancilliary modules

Type lists track the types of bound variables.

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.