[Haskell-cafe] Parsing binary 'hierachical' objects for lazy developers
Stephen Tetley
stephen.tetley at gmail.com
Wed Apr 27 21:52:22 CEST 2011
John Meacham's DrIFT tool used to get extended faster than GHC for
things that "should" be automatic. I'm not sure of its current status,
though:
http://repetae.net/computer/haskell/DrIFT/
For your second problem, something like this:
getAB :: Get (Either A B)
getAB = do
len <- getWord16be
tag <- getWord16be
if tag == 0x00 then do { a <- getA len; return (Left a) }
else do { a <- getB len; return (Right b) }
-- length already consumed so sent as an argument...
getA :: Word16 -> Get A
getB :: Word16 -> Get B
More information about the Haskell-Cafe
mailing list