Module Lambda_lib.Ast

type name = string
type 'name t =
  1. | Var of 'name
    (*

    Variable x

    *)
  2. | Abs of 'name * 'name t
    (*

    Abstraction λx.t

    *)
  3. | App of 'name t * 'name t

The main type for our AST (дерева абстрактного синтаксиса)

In type definition above the 3rd constructor is intentionally without documentation to test linter