我正在开发哈斯克尔替代品
less
传呼机。
完整代码在这里
https://github.com/purpleP/pager.git
buildInitialState :: IO TuiState
buildInitialState = do
(file : args) <- getArgs
bs <- mmapFileByteStringLazy file Nothing
pure (TuiState (V.fromList (BC.lines bs)) 0)
我就是这样读文件的。它对20Mb的文件很好,但对100Mb的文件不起作用。我是做错什么了还是这是mmap库中的一个bug?
terminated by signal SIGSEGV (Address boundary error)
正是我得到的错误。