mirror of
https://codeberg.org/ProgramSnail/pass_strategy_synthesis.git
synced 2025-12-15 08:28:42 +00:00
17 lines
310 B
OCaml
17 lines
310 B
OCaml
open OCanren
|
|
|
|
module Lam = struct
|
|
[%%distrib
|
|
type nonrec ('varname, 'self) t =
|
|
| V of 'varname
|
|
| App of 'self * 'self
|
|
| Abs of 'varname * 'self
|
|
[@@deriving gt ~options:{ show; fmt; gmap }]
|
|
|
|
type ground = (GT.string, ground) t]
|
|
|
|
let varX = !!"x"
|
|
let varY = !!"y"
|
|
let varF = !!"f"
|
|
end
|
|
|