Funcons-beta : Thunks.cbs | PRETTY | PDF
Thunks
Meta-variables
  T <: valuesDatatype
  thunks(T) ::= thunk(_:abstractions(()=>T))thunks(T) consists of abstractions whose bodies do not depend on
  a given value, and whose executions normally compute values of type T.
  thunk(abstraction(X)) evaluates to a thunk with dynamic bindings,
  thunk(closure(X)) computes a thunk with static bindings.
Funcon
  force(_:thunks(T)) : =>Tforce(H) enacts the abstraction of the thunk H.
Rule
  force(thunk(abstraction(X))) ~> no-given(X)