sig
  type 'a arg
  type ('f, 'r) t
  val nil : ('r, 'r) Applicative_intf.Args.t
  val cons :
    'Applicative_intf.Args.arg ->
    ('f, 'r) Applicative_intf.Args.t ->
    ('-> 'f, 'r) Applicative_intf.Args.t
  val ( @> ) :
    'Applicative_intf.Args.arg ->
    ('f, 'r) Applicative_intf.Args.t ->
    ('-> 'f, 'r) Applicative_intf.Args.t
  val step :
    ('f1, 'r) Applicative_intf.Args.t ->
    f:('f2 -> 'f1) -> ('f2, 'r) Applicative_intf.Args.t
  val mapN :
    f:'-> ('f, 'r) Applicative_intf.Args.t -> 'Applicative_intf.Args.arg
  val applyN :
    'Applicative_intf.Args.arg ->
    ('f, 'r) Applicative_intf.Args.t -> 'Applicative_intf.Args.arg
end