anchor.diff:          loop 0)
   
   type Host() =
  +
  +    let kernelFun = <@fun (range:_1D) (buf:array<_>) -> buf.[0] <- 1L@>
  +
       member this.Do () =
           let devices = Device.getDevices "*" DeviceType.Gpu
           printfn "Device: %A" devices.[0]
  
positive.code:                             let res = read a.Source a.Destination
                              match a.ReplyChannel with
                              | None -> ()
                              | Some ch -> ch.Reply res
                              0
                  }
  
      //member this.Allocate (a) =
      //    printfn "Allocation"
      //    this.HandleAllocate a
      member this.GetNewProcessor () = MailboxProcessor.Start(fun inbox ->
  
          let commandQueue = new Brahma.OpenCL.CommandQueue(clContext, device)
  
negative.code:     member this.Source = src
      member this.ReplyChannel = replyChannel
  
  type RunKernel<'t>(kernelRunFun, ?replyChannel:AsyncReplyChannel<GpuKernel<'t>>) =
      member this.KernelRunFunction = kernelRunFun
      member this.ReplyChannel = replyChannel
  
  