lazy-io

    1热度

    2回答

    我的程序从网络套接字读取一行并将其写入光盘。由于行可能很长,并且字符串有可怕的性能,所以我开始使用懒惰字节字符串。目前看来,哈斯克尔将晃过hClose光盘上的文件句柄实际上不冲洗整个字节串到光盘上,这样做: 打开文件进行写入 写字节字符串hPut 关闭文件到文件 阅读 打开文件通常会导致openFile: resource busy (file is locked)。 是否可以强制评估并等待整个字

    3热度

    1回答

    我想将Haskell添加到我的工具箱中,所以我正在通过Real World Haskell进行工作。 在输入和输出的一章,在the section on hGetContents,我碰到这个例子就是: import System.IO import Data.Char(toUpper) main :: IO() main = do inh <- openFile "input.t

    5热度

    3回答

    在我朝哈斯克尔抓偷懒IO journing重新实现getContents我试过如下: main = do chars <- getContents consume chars consume :: [Char] -> IO() consume [] = return() consume ('x':_) = consume [] consume (c : rest) =

    6热度

    4回答

    这是一个菜鸟问题。 我想编写一个函数,提供图像的懒惰流,大概是这样的: imageStream :: [IO Image] 不幸的是,它读取图像可能会失败的功能,所以它看起来像: readImage :: IO (Maybe Image) 所以,函数I 可以写的样子: maybeImageStream :: [IO (Maybe Image)] 如何在保持懒惰IO的同时实现如下功能?

    1热度

    1回答

    我想重写interact函数,但使用Text而不是String。是否可以使用Data.Text和/或Data.Text.Lazy来完成与interact相同的行为? 例如,当我运行使用String此程序: main = interact (unlines . map f . lines) where f "hello" = "wassup" f _ = "wat?" 它等