Old pipes
tutorial has following example. How would this code look like with version 4.1.1?
read' :: FilePath -> Frame Text IO C C ()
read' file = do
liftU $ putStrLn "Opening file..."
h <- liftU $ openFile file ReadMode
-- The following requires "import qualified Control.Monad as M"
finallyD (putStrLn "Closing file ..." M.>> hClose h) $ readFile' h