Zmq_deferred.Socket
The functor allows abstraction of the concurrency monad
module type Socket = sig ... end
module Make (T : Deferred.T) : Socket with type 'a deferred = 'a T.t and type 'a of_socket_args = 'a