jon.recoil.org

Module Shape.DeBruijn_index

We use de Bruijn indices for some binders in Shape.t below to increase sharing. That is, de Bruijn indices ensure that alpha-equivalent terms are actually equal. This reduces redundancy when we emit shape information into the debug information in later stages of the compiler (see dwarf_type.ml), since equal shapes produce the same debug information.

type t
val create : int -> Shape.DeBruijn_index.t