anchor.diff:  
   
                       // TODO: writers could be created by the pool!!!!
  +                    if isNull (pool :> obj) then Log.warn "asdasdasd"
                       let writers = UnmanagedUniformWriters.writers true pool.Fields inputs
        
                       let view = pool.AllocView()
  
positive.code:         member x.CreateUniformBufferPool (layout : UniformBlock) =
              uniformBufferPools.GetOrAdd(layout, fun (layout : UniformBlock) ->
                  let uniformFields = layout.fields |> List.map (fun a -> a.UniformField)
                  ctx.CreateUniformBufferPool(layout.size, uniformFields)
              )
  
               
  
negative.code:         let mutable desc = Unchecked.defaultof<_>
  
          let getOrCreate() =
              lock this (fun () ->
                  if initialized then 
                      true
                  else
                      initialized <- true
                      desc <- createDesc this 
                      this.OutOfDate <- false
                      false
              )
  
          override x.InputChanged (i : IAdaptiveObject) =
              if getOrCreate() then
  