anchor.diff:              let isIdentifierChar c = isLetter c || isDigit c || c = '_'
               many1Satisfy2L isIdentifierFirstChar isIdentifierChar "identifier"
   
  -        let internal btParens p = (between (str "(") (str ")")) p
  -        let internal i0 p =             ws >>. p .>> ws
  -        let internal iN p = str "," >>. ws >>. p .>> ws
  +        let private btParens p = (between (str "(") (str ")")) p
  +        let private i0 p =             ws >>. p .>> ws
  +        let private iN p = str "," >>. ws >>. p .>> ws
   
           let pSymbol = str "#" >>. pIdentifier
           let lsymbol = pSymbol |>> LSymbol
  
positive.code:                 | LString  s -> "\"" + s + "\""
                  | LFloat   f -> string f
                  | LInteger i -> string i
                  | LPoint   (x, y)    -> sprintf "point(%A, %A)" x y
                  | LRect (a, b, c, d) -> sprintf "rect(%A, %A, %A, %A)" a b c d
                  | LColor   (r, g, b) -> sprintf "color(%i, %i, %i)"  r g b
                  | LVector  (x, y, z) -> sprintf "vector(%f, %f, %f)" x y z
                  | LList     l -> "[" + String.concat ", " (l |>> (box >> string))  + "]"
  
negative.code: 
  
      let inline toLList v = v |>> LString  |> toList |> LList
  
      open FParsec
      module internal Parser =    
          
          // some abbreviations
          let private ws  = spaces // eats any whitespace
          let private str = pstring  
  
          let stringLiteral =
              let escape = anyOf "\"\\/bfnrt" |>> function
  