anchor.diff:    ///
     /// For example
     ///
  -  ///> width << txt "foo" <| fun n ->
  +  ///> width <| txt "foo" <| fun n ->
     ///>   [txt "bar"; txt "baz"; txt "foobar"]
     ///>   |> punctuate comma
     ///>   |> vsep
  
positive.code:   /// newline characters.  For example, `txt "hello"` renders to `hello`.
    val txt: string -> Doc
  
    /// `fmt ...` is equivalent to `txt (sprintf ...)`.  For example, to format an
    /// integer `i`, one could write `fmt "%d" i`.
    val fmt: Printf.StringFormat<'a, Doc> -> 'a
  
    /// `nest n doc` renders document `doc` indented by `n` more columns.  See
    /// also: `gnest` and `nestBy`.
  #if DOC
    ///
  
negative.code: #endif
    val group: Doc -> Doc
  
    /// `doc |> gnest n` is equivalent to `doc |> group |> nest n` which is
    /// equivalent to `doc |> nest n |> group`.  `nest` is frequently combined
    /// with `group`.
    val gnest: numCols: int -> (Doc -> Doc)
  
    /// Used to specify alternative documents.  The `wide` document is added to
  