anchor.diff:    testString "(+ 1 2 (* 3 4))"
     testString "(set i 10)"
     testString "(until (= 1 1) (set i 10))"
  -  testString "(step (set i (quote hoge)) (print i))"
  +  testString "(step (set i (quote hoge)) i)"
     testString "(step (set i (quote (+ 1 2 3))) (print i))"
     testFile   "example_sum.ore"
     testFile   "example_firstclass_op.ore"
  
positive.code: 
      let private command expr =
        pstring "(" >>. spaces >>. symbol .>> spaces .>>. sepEndBy expr spaces .>> pstring ")"
        |>> fun (symbol, args) -> Function (symbol, args)
  
      let private expr =
        fix <| fun expr -> token <|> command expr
  
negative.code: 
      let private nil = pstring "nil" >>% Nil
  
      let private number = regex "[+-]?[0-9]+" |>> (Int32.Parse >> Number)
  
      let private symbol = regex "[a-zA-Z0-9\+\-\*\/\=\!]+"
  
  