diff --git a/Data/Vector/Algorithms/Combinators.hs b/Data/Vector/Algorithms/Combinators.hs
--- a/Data/Vector/Algorithms/Combinators.hs
+++ b/Data/Vector/Algorithms/Combinators.hs
@@ -33,8 +33,8 @@
 
 -- | Safely applies a mutable array algorithm to an immutable array.
 apply :: (Vector v e) => (forall s mv. M.MVector mv e => mv s e -> ST s ()) -> v e -> v e
-apply algo v = new . N.New $
-                 M.unstream (stream v) >>= \arr -> algo arr >> return arr
+apply algo v = (new . N.New)
+                 (M.unstream (stream v) >>= \arr -> algo arr >> return arr)
 
 {-
 -- | Uses a function to compute a key for each element which the
diff --git a/vector-algorithms.cabal b/vector-algorithms.cabal
--- a/vector-algorithms.cabal
+++ b/vector-algorithms.cabal
@@ -1,5 +1,5 @@
 Name:              vector-algorithms
-Version:           0.3.3
+Version:           0.3.4
 License:           BSD3
 License-File:      LICENSE
 Author:            Dan Doel
