able(struct
        type t = int * int
        let cmp (a0, a1) (b0, b1) =
          match Pervasives.compare a0 b0 with
          | 0 -&gt; Pervasives.compare a1 b1
          | c -&gt; c
      end)

    let mySet1 = Belt.Set.make ~id:(module Comparable1)

    module Comparable2 = Belt.Id.MakeComparable(struct
      type t = int * int
      let cmp (a0, a1) (b0, b1) =
        match Pervasives.compare a0 b0 with
        | 0 -&gt; Pervasives.compare a1 b1
        | c -&gt; c
    end)

    let mySet2 = Belt.Se