diff --git a/freq.cabal b/freq.cabal
--- a/freq.cabal
+++ b/freq.cabal
@@ -1,7 +1,7 @@
 ---------------------------------------------------------------------
 
 name:                      freq
-version:                   0.1.0.0
+version:                   0.1.0.1
 build-type:                Simple
 cabal-version:             >= 1.10
 category:                  Data
diff --git a/src/Freq/Internal.hs b/src/Freq/Internal.hs
--- a/src/Freq/Internal.hs
+++ b/src/Freq/Internal.hs
@@ -251,7 +251,7 @@
           in showFloat (PM.indexByteArray arr ix :: Double) ++ " " ++ extra ++ go (ix + 1) 
         else ""
         where
-          !elemSz = P.div (PM.sizeofByteArray arr) (PM.sizeOf (undefined :: Double))
+          !elemSz = P.div (PM.sizeofByteArray arr) (sizeOf (undefined :: Double))
           showFloat :: P.RealFloat a => a -> String
           showFloat !x = Numeric.showFFloat (Just 2) x ""
 
@@ -259,6 +259,9 @@
 --  Internal Section                                              --
 --------------------------------------------------------------------
 
+sizeOf :: PM.Prim a => a -> Int
+sizeOf x = I# (PM.sizeOf# x)
+
 word8ToInt :: Word8 -> Int
 word8ToInt !w = P.fromIntegral w
 {-# INLINE word8ToInt #-}
@@ -282,7 +285,7 @@
         ixedChars :: [(Word8,Word8)]
         !ixedChars = L.zip (P.enumFrom (0 :: Word8)) (S.toList allChars)
     ixs <- PM.newByteArray 256
-    square <- PM.newByteArray (szSq * PM.sizeOf (undefined :: Double))
+    square <- PM.newByteArray (szSq * sizeOf (undefined :: Double))
     let fillSquare :: Int -> ST s ()
         fillSquare !i = if i < szSq
           then do
