on master help sign in
Fix HandleIO example
commitea342a40c563035f187b8e381f12d1e33d4528e4 authorHarendra Kumar <harendra.kumar@gmail.com> dateFri 2 Aug 2019, 07:10 (7 years ago) parentbba7045
1 file changed+6−4
examples/HandleIO.hs+6−4
examples/HandleIO.hs+6−4
@@ -35,14 +35,16 @@ wcl src = print =<< (S.length
3535 $ FH.read src)
3636-}
3737
38+{-
3839grepc :: String -> FH.Handle -> IO ()
3940grepc pat src = print . (subtract 1) =<< (S.length
40− $ FL.splitOn (A.fromList (map ord' pat)) FL.drain
41+ $ FL.splitOnSeq (A.fromList (map ord' pat)) FL.drain
4142 $ FH.read src)
43+-}
4244
4345avgll :: FH.Handle -> IO ()
4446avgll src = print =<< (FL.foldl' avg
45− $ FL.splitSuffixBy (== ord' '\n') FL.length
47+ $ FL.splitBySuffix (== ord' '\n') FL.length
4648 $ FH.read src)
4749 where avg = (/) <$> toDouble FL.sum <*> toDouble FL.length
4850 toDouble = fmap (fromIntegral :: Int -> Double)
@@ -50,7 +52,7 @@ avgll src = print =<< (FL.foldl' avg
5052llhisto :: FH.Handle -> IO ()
5153llhisto src = print =<< (FL.foldl' (FL.classify FL.length)
5254 $ S.map bucket
53− $ FL.splitSuffixBy (== ord' '\n') FL.length
55+ $ FL.splitBySuffix (== ord' '\n') FL.length
5456 $ FH.read src)
5557 where
5658 bucket n = let i = n `div` 10 in if i > 9 then (9,n) else (i,n)
@@ -63,7 +65,7 @@ main = do
6365
6466 rewind >> putStrLn "cat" >> cat src -- Unix cat program
6567 rewind >> putStr "wcl " >> wcl src -- Unix wc -l program
66− rewind >> putStr "grepc " >> grepc "aaaa" src -- Unix grep -c program
68+ -- rewind >> putStr "grepc " >> grepc "aaaa" src -- Unix grep -c program
6769 rewind >> putStr "avgll " >> avgll src -- get average line length
6870 rewind >> putStr "llhisto " >> llhisto src -- get line length histogram
6971