anchor.diff:          if opts.raw then (sprintf "%A" >> Starling.Pretty.Types.String)
                       else printResponse opts.showModel
       printResult pfn (List.map printError) starlingR
  -    |> Starling.Pretty.Types.print
  -    |> printfn "%s"
       0
   
   [<EntryPoint>]
  
positive.code:                                 |> Pretty.Types.commaSep ]
      | Other e -> Pretty.Types.String e
  
  /// Pretty-prints a Chessie result, given printers for the successful
  /// case and failure messages.
  let printResult pOk pBad = 
      either (pairMap pOk pBad >> function 
              | (ok, []) -> ok
              | (ok, ws) -> 
                  Starling.Pretty.Types.vsep [ ok
                                               VSkip
                                               Separator
                                               VSkip
                                               headed "Warnings" ws ]) (pBad >> headed "Errors")
  
  /// Shorthand for the HSF stage.
  let hsf = bind (Starling.Horn.hsfModel >> mapMessages Error.HSF)
  
negative.code:     match CommandLine.Parser.Default.ParseArguments<Options> argv with
      | :? Parsed<Options> as parsed -> mainWithOptions parsed.Value
      | :? NotParsed<Options> as notParsed -> 
          2
      | _ -> 
          printfn "parse result of unknown type"
  