anchor.diff:  
   exception UnexpectedItems of string * string
   exception UnexpectedChar of char
  +exception UnclosedString
   
   let parse str =
       let rec parseList acc = function
  
positive.code:         | xs ->
              let (res, rest) = parseIdent [] xs
              in Sexp.Atom(res), rest
      in match Seq.toList str |> parse' with
          | (res, []) -> res
          | (_, rest) -> raise <| UnexpectedItems ("Unexpected items",
  
negative.code:         | xs ->
              let (res, rest) = parse' xs
              in parseList (res :: acc) rest
  
      and parseNumber acc dec =
          let finish acc xs =
              let res = acc |> List.rev |> List.toArray |> System.String
  