anchor.diff:                          handle := h
                           transact (fun () -> handleMod.Value <- h)
   
  -                    { dependencies = [data]
  -                      updateCPU = fun () -> data.GetValue(self) |> ignore
  +                    { trackChangedInputs = false
  +                      dependencies = [data]
  +                      updateCPU = fun _ -> data.GetValue(self) |> ignore
                         updateGPU = fun () ->
                           match data.GetValue(self) with
                               | :? Buffer as t -> updateTo t
  
positive.code:                 let c,d = toInternal bindings
                  let handle = ctx.CreateFramebuffer(c, d)
  
                  { dependencies = bindings |> Seq.map (fun (_,v) -> v :> IMod) |> Seq.toList
                    updateCPU = fun () -> ()
                    updateGPU = fun () -> 
                      let c,d = toInternal bindings
                      ctx.Update(handle, c, d)
  
negative.code:     exception ResourceManagerException of string
  
      type internal ChangeableResourceDescription<'a> = 
          { trackChangedInputs : bool
            dependencies : list<IMod>; 
            updateCPU : list<IAdaptiveObject> -> unit; 
            updateGPU : unit -> unit; 
            destroy : unit -> unit; 
            resource : IMod<'a>;
  