On 02/07/10 22:41, Gregory Crosswhite wrote:
On 7/2/10 5:16 AM, Vincent Hanquez wrote:
It's necessary in my case since i receive chunks of data to be hashed
from the
network, and I don't want to carry a buffer of data (with potential
security
issues), until i can hash everything.
As an aside, this kind of pattern where you are processing chunks of
input and producing a summary output sounds like a good fit for the
Iteratees style of I/O.
Indeed. I haven't played with iteratee yet, but it seems fairly easy for
the user to add a iteratee interface on top of update and finalize.
basically it seems that Chunk = update and EOF = finalize.
Also, if you want the intermediate chunks to go away, then don't
forget to use strict evaluation when you update the context. :-)
That is unfortunately one of the kinds of bugs that doesn't screw up
the behaviour of the program in a way that is immediately obvious.
yes, you're absolutely right. I did actually forget in an early version
of some code i've got on top of cryptohash, and it took me a good while
to find ;)
--
Vincent
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe