Eval.MakeMake(M) provides an implementation of the S2 interface lifted into the monad M.
module M : Monads.Std.Monad.Sclass type 'r semantics = 'r T1(M).semanticsclass type virtual ['r, 's] domain = ['r, 's] T1(M).domainclass virtual ['r, 's] t : object ... enda virtual base class for all evaluators