anchor.diff:      let mutable dict = InlineDelayInit<_>(fun () -> 
               let arr = array.Value
               let t = Dictionary<_,_>()
  -            for y in arr do 
  +            for i = arr.Length - 1 downto 0 do 
  +                let y = arr.[i]
                   let key = y.Name
                   if t.ContainsKey key then 
                       t.[key] <- y :: t.[key]
  
positive.code: //
  // REVIEW: this data structure looks substandard
  // -------------------------------------------------------------------- 
  
  let addILMethodToTable (y: ILMethodDef) tab =
    let key = y.Name
    let prev = Map.tryFindMulti key tab
    Map.add key (y::prev) tab
  
  let mkILMethodsFromArray xs =  ILMethodDefs (fun () -> xs)
  let mkILMethods xs =  xs |> Array.ofList |> mkILMethodsFromArray
  
negative.code:     prev.[n] <- ltd;
      Map.add ns prev tab
  
  (* this is not performance critical *)
  let addILTypeDef td (tdefs: ILTypeDefs) = ILTypeDefs (fun () -> [| yield getName (notlazy td); yield! tdefs.AsArrayOfLazyTypeDefs |])
  let mkILTypeDefsFromArray l =  ILTypeDefs (fun () -> Array.map (notlazy >> getName) l)
  