anchor.diff:  
           and evalApply exprs originOpt env =
               let oldEnv = env
  -            let (violations, evaleds, env) = evalExprs exprs env
  -            match violations with
  -            | Violation _ as violation :: _ -> (violation, oldEnv)
  -            | _ ->
  +            match evalMany exprs env with
  +            | Right (evaleds, _) ->
                   match evaleds with
                   | head :: tail ->
                       match head with
  
positive.code:             | ComputedStream computedStream ->
                  Right (computedStream :?> Prime.Stream<obj, Game, World>, env)
  
          and evalExprs exprs env =
              let (violations, evaleds, env) =
                  List.fold
                      (fun (violations, evaleds, env) expr ->
                          let (evaled, env) = eval expr env
                          match evaled with
                          | Violation _ as violation -> (violation :: violations, evaleds, env)
                          | evaled -> (violations, evaled :: evaleds, env))
                      ([], [], env)
                      exprs
              (violations, List.rev evaleds, env)
  
          and evalBinding expr name cachedBinding originOpt env =
              match Env.tryGetBinding name cachedBinding env with
              | None ->
  
negative.code:                         else (Violation ([!!"MalformedLambdaInvocation"], "Wrong number of arguments.", originOpt), oldEnv)                        
                      | _ -> (Violation ([!!"TODO: proper violation category."], "Cannot apply a non-binding.", originOpt), oldEnv)
                  | [] -> (Unit originOpt, oldEnv)
              | Left (violation, _) -> (violation, oldEnv)
  
          and evalLet4 binding body originOpt env =
              let env =
  