-newSTArray = newArray
-boundsSTArray = boundsOfArray
-readSTArray = readArray
-writeSTArray = writeArray
-thawSTArray = thawArray
-freezeSTArray = freezeArray
-unsafeFreezeSTArray = unsafeFreezeArray
+newSTArray ixs elt =
+ newArray ixs elt >>= \arr ->
+ return (STArray arr)
+
+boundsSTArray (STArray arr) = boundsOfArray arr
+
+readSTArray (STArray arr) ix = readArray arr ix
+
+writeSTArray (STArray arr) ix elt = writeArray arr ix elt
+
+thawSTArray arr = thawArray arr >>= \starr -> return (STArray starr)
+
+freezeSTArray (STArray arr) = freezeArray arr
+
+unsafeFreezeSTArray (STArray arr) = unsafeFreezeArray arr