# Functor Set_lang.Make_monadic_eval

    module Make_monadic_eval: functor (M : Core.Std.Monad.S) -> sig .. end

Parameters:

`M` | : | `Core.Std.Monad.S`

    val subst : ('b, 'e, 'c) Set_lang.t ->
           f:('b -> ('b, 'e, 'c) Set_lang.t M.t) -> ('b, 'e, 'c) Set_lang.t M.t

    val map : ('b, 'e, 'c) Set_lang.t -> f:('b -> 'b M.t) -> ('b, 'e, 'c) Set_lang.t M.t

    val specialize : ('b, 'e, 'c) Set_lang.t ->
           f:('b -> ('e, 'c) Core.Std.Set.t option M.t) -> ('b, 'e, 'c) Set_lang.t M.t

    val eval : ('b, 'e, 'c) Set_lang.t ->
           f:('b -> ('e, 'c) Core.Std.Set.t M.t) -> ('e, 'c) Core.Std.Set.t M.t