 newArray   :: Storable a => [a] -> IO (DevicePtr a)
 newArray v =
     let bytes = fromIntegral (length v) * fromIntegral (F.sizeOf (head v)) in
-    forceEither  `fmap` malloc bytes >>= \dptr ->
+    moduleForceEither `fmap` malloc bytes >>= \dptr ->
     pokeArray dptr v >>= \rv ->
     case rv of
         Nothing -> return dptr

moduleErr :: String -> String -> a
moduleErr fun msg =  error ("Foreign.CUDA." ++ fun ++ ':':' ':msg)


--
allocaBytes :: Int64 -> (DevicePtr a -> IO b) -> IO b
allocaBytes bytes =
    bracket (moduleForceEither `fmap` malloc bytes) free


-- |
