cassava
CSV parser and encoder
able to generic
attoparsec
One kind Parsec
Data.Attoparsec.ByteString.Char8 is much more useful.
NB : the Result can be Partial, which means the parsec may not come to end. To avoid this, try parseOnly
Lens
the misusing of _XXX and XXX could be a common naive mistake.