diff --git a/Obsidian.cabal b/Obsidian.cabal
--- a/Obsidian.cabal
+++ b/Obsidian.cabal
@@ -1,5 +1,5 @@
 Name:           Obsidian
-Version:        0.0.0.1
+Version:        0.0.0.2
 
 License:                BSD3
 License-file:           LICENSE
diff --git a/Obsidian/Array.hs b/Obsidian/Array.hs
--- a/Obsidian/Array.hs
+++ b/Obsidian/Array.hs
@@ -53,13 +53,13 @@
 -- Push and Pull arrays
 ---------------------------------------------------------------------------
 data Push p s a =
-  Push s (forall b. ((a -> Exp Word32 -> TProgram NameInfo) -> Program p NameInfo))
+  Push s ((a -> Exp Word32 -> TProgram NameInfo) -> Program p NameInfo)
 
 data Pull s a = Pull {pullLen :: s, 
-                      pullFun :: Exp Word32 -> a}
+                      pullFun :: EWord32 -> a}
 
-mkPushArray :: s -> (forall b. ((a -> Exp Word32 -> TProgram NameInfo)
-                             -> Program t NameInfo)) -> Push t s a
+mkPushArray :: s -> ((a -> EWord32 -> TProgram NameInfo)
+                             -> Program t NameInfo) -> Push t s a
 mkPushArray n p = Push n p 
 mkPullArray n p = Pull n p  
 
diff --git a/Obsidian/Exp.hs b/Obsidian/Exp.hs
--- a/Obsidian/Exp.hs
+++ b/Obsidian/Exp.hs
@@ -173,7 +173,6 @@
   Sub :: Num a => Op ((a,a) -> a) 
   Mul :: Num a => Op ((a,a) -> a) 
   Div :: Num a => Op ((a,a) -> a) 
-  -- If  :: Op ((Bool,a,a) -> a) 
   
   Mod :: Integral a => Op ((a,a) -> a)
          
