diff --git a/digestive-functors.cabal b/digestive-functors.cabal
--- a/digestive-functors.cabal
+++ b/digestive-functors.cabal
@@ -1,5 +1,5 @@
 Name:     digestive-functors
-Version:  0.5.0.3
+Version:  0.5.0.4
 Synopsis: A practical formlet library
 
 Description:
diff --git a/src/Text/Digestive/Util.hs b/src/Text/Digestive/Util.hs
--- a/src/Text/Digestive/Util.hs
+++ b/src/Text/Digestive/Util.hs
@@ -5,8 +5,10 @@
 
 
 --------------------------------------------------------------------------------
+import           Data.Maybe (listToMaybe)
+
+
+--------------------------------------------------------------------------------
 -- | 'read' in the 'Maybe' monad.
 readMaybe :: Read a => String -> Maybe a
-readMaybe str = case readsPrec 1 str of
-    [(x, "")] -> Just x
-    _         -> Nothing
+readMaybe str = listToMaybe [x | (x, "") <- readsPrec 1 str]
