anchor.diff:  
       do process_rules classes [] rules ctxt
   
  -    let programTyped,_,_ = TypeInference.inferTypeAnnotations program (Extension({ Name = "___tmp" }, Position.Zero, ())) [] ctxt
  +    let programTyped,_,_ = TypeInference.inferTypes program (Extension({ Name = "___tmp" }, Position.Zero, ())) [] ctxt
   
       let classes = classes
       let extensions = @"public static class Extensions { public static V GetKey<T, V>(this System.Collections.Immutable.ImmutableDictionary<T, V> self, T key) { return self[key]; } }"
  
positive.code:   | i -> 
      failwithf "Code generation error @ %A" i.DebugInformation
    
  let rec createElementInner (ctxt:ConcreteExpressionContext) (expectedType:BasicExpression<Keyword, Var, Literal, Position, unit>) (e:BasicExpression<Keyword, Var, Literal, Position, TypeInference.TypeAnnotation>) = 
      match e with
      | Keyword(Custom k, _, ti) 
      | Application(Regular,(Keyword(Custom k, _, ti)) :: [], _, _)
  
negative.code: ﻿module CodeGenerator
  
  open TypeInference
  open System
  open Utilities
  open ParserMonad
  