summaryrefslogtreecommitdiff
path: root/Utility/Misc.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2011-10-31 23:39:55 -0400
committerGravatar Joey Hess <joey@kitenet.net>2011-10-31 23:39:55 -0400
commitc643136e32b99a650a6fdea0731ea5af275f6866 (patch)
tree0685c22f6bad89c40921d46d8ea081d86b3bb6bb /Utility/Misc.hs
parent3d2a9f84051e9dc705ba4bb4828af691e479ae0e (diff)
playing with >=>
Apparently in haskell if you teach a man to fish, he'll write more pointfree code.
Diffstat (limited to 'Utility/Misc.hs')
-rw-r--r--Utility/Misc.hs5
1 files changed, 3 insertions, 2 deletions
diff --git a/Utility/Misc.hs b/Utility/Misc.hs
index bc1834774..b3bf22612 100644
--- a/Utility/Misc.hs
+++ b/Utility/Misc.hs
@@ -8,15 +8,16 @@
module Utility.Misc where
import System.IO
+import Control.Monad
{- A version of hgetContents that is not lazy. Ensures file is
- all read before it gets closed. -}
hGetContentsStrict :: Handle -> IO String
-hGetContentsStrict h = hGetContents h >>= \s -> length s `seq` return s
+hGetContentsStrict = hGetContents >=> \s -> length s `seq` return s
{- A version of readFile that is not lazy. -}
readFileStrict :: FilePath -> IO String
-readFileStrict f = readFile f >>= \s -> length s `seq` return s
+readFileStrict = readFile >=> \s -> length s `seq` return s
{- Attempts to read a value from a String. -}
readMaybe :: (Read a) => String -> Maybe a