jon.recoil.org

Module Datalog.String

Pseudo-heterogenous lists of strings.

The type 'a String.hlist is equivalent to the type string list, but with extra type information, which we leverage to provide the program API.

type _ hlist =
  1. | [] : nil hlist
  2. | :: : string * 'b hlist -> ('a -> 'b) hlist