Hi Joel,
I've been working on a library to parse binary data files (java bytecode
in my case), and I ended up writing my own DataReader monad for the
purpose of reading binary streams. It offers two main features:
* It keeps track of how many bytes you've read. This is necessary for
reading java bytecode, but probably unnecessary for the protocol you're
using.
* It supports hierarchical error messages (so you see "error while
reading foo: unexpected end of input" instead of just "unexpected end of
input").
If you're interested, you can check it out here:
http://www.kimbly.com/code/JavaBytecode/
Kim
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe