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 ParseFromFile (path: string) : Result<expr, ErrorKind> =
      ParseFromString <| System.IO.File.ReadAllText path
  
  
    type Engine() =
      let env = new Dictionary<string, expr>()
  
      member private this.getValue k =
        match env.TryGetValue(k) with
  
negative.code: 
    type expr = Nil
              | Boolean of bool
              | Number of int
              | Symbol of string
              | Call of string * expr list
              | Operator of operator_t
    and operator_t = delegate of expr list -> expr option
  
    module Expr =
      let ToBoolean e =
  