[Haskell-cafe] Re: Silly I/O question
simons at cryp.to
Tue Sep 28 19:30:49 EDT 2004
John Goerzen writes:
> But the block I/O in Haskell makes no sense to me (how do
> I allocate a Ptr type block thingy)?
With mallocArray. Block I/O is difficult, though.
>> You might want to write a function that copies the file
>> _once_ and then just call that function several times.
> If I load it into memory, yes. Otherwise, it seems not so
Looking at your program:
> main = disp 100
> disp 0 = return ()
> disp n =
> let copy x = do
> eof <- isEOF
> if eof
> then return ()
> else do
> line <- getLine
> putStrLn line
> (copy 0)
> in do
> copy 0
> hSeek stdin AbsoluteSeek 0
> disp (n-1)
Just let the function _begin_ with the seek, copy the file,
and return. Then call it 100 times. No recursion.
More information about the Haskell-Cafe