[Haskell-beginners] Type polymorphism with size

Michael Snoyman michael at snoyman.com
Tue Nov 18 13:02:20 EST 2008


I am trying to write some code to read flat files from a mainframe system.
This includes some character fields. This is a fixed width file, so each
field will have a consistent length between records, but there are fields of
different length within a record. For example, I might have a "name" field
length 20 and an eye color field length 5.

I am trying to use the binary library to read in this file. I've written a
binary type, MFChar2, for reading in a 2-length character field. It is
defined as such (you can safely ignore the ebcdicToAscii piece, it is just
doing character conversion):

data MFChar2 = MFChar2 [Word8]
instance Binary MFChar2 where
    put = undefined
    get = do ebcdic <- replicateM 2 getWord8
             return $ MFChar2 $ map ebcdicToAscii ebcdic

What I would like to do is have some kind of generic "MFChar" data type
which could take any character length, but I can't figure out how to do it.
Any help would be appreciated.

Thanks,
Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/beginners/attachments/20081118/3349841f/attachment.htm


More information about the Beginners mailing list