functor (T : FUN_TYPE->
  sig
    type s = T.s
    type r = T.r
    type t = s -> r
    val register :
      Netplex_types.controller -> (Netplex_types.controller -> t) -> t
  end