queryOp :: String -> IO (Either String ByteString)
queryOp key = catch (readFile key >>= return . Right)
(\e -> return (Left (show (e :: IOException))))
main = do
queryOp :: String -> IO (Either String ByteString)
queryOp key = catch (readFile key >>= return . Right)
(\e -> return (Left (show (e :: IOException))))
main = do