package alg_structs

  1. Overview
  2. Docs

Source file traversable.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(* TODO *)

(* module Seed = struct
 *   module type S = sig
 *     include Functor.S
 *     include Foldable.S with type 'a t := 'a t
 *     module A : Applicative.S
 *     val traverse : f:('a -> 'b A.t) -> 'a t -> 'b t A.t
 *   end
 * end
 *
 * module type S = sig
 *   include Seed.S
 *   val sequence : 'a A.t t -> 'a t A.t
 *   (\* TODO val map_m *\)
 * end
 *
 * module Make (B:Seed.S) : S with type 'a t = 'a B.t
 * = struct
 *   include B
 *   let sequence t = traverse ~f:Fun.id t
 * end *)