Module Eval.T2

An evaluator parametrized by a T2 monad.

Parameters

module M : Core_kernel.T2

Signature

type ('a, 'e) m = ('a, 'e) M.t
class type ['a, 'r] semantics = object ... end

interface that describes semantics of an expression

class type virtual ['a, 'r, 's] domain = object ... end

interface of the evaluation value domain

class type virtual ['a, 'r, 's] eff = object ... end

interface of the computation effects