[Haskell-cafe] RE: How to implement Read instance for user defined type

Verma Anurag-VNF673 Anurag.Verma at motorola.com
Mon Mar 24 07:40:18 EDT 2008

That works, but is probably not what you want. You can use the lex 
function to parse identifiers not enclosed in quotes:
 > instance Read Mark where
 >   readsPrec _ str = [(Mark x, t') | ("mark",t) <- lex str,
 >                                     (x,t') <- reads t

I played a bit around with lex function and it seems that under certain
circumstances it doesn't read the string of token properly 


For e.g. 



-- IP address 


*Mark> lex ""



-- digit + char 


Also lex "8021p"   output is 


*Mark> lex "8021p"



Is there any other lex variant available?  Or should I switch to using
Parsec library, in that case, will I still be able to use it with Read
instances? If so, how?




-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20080324/e66a24ff/attachment.htm

More information about the Haskell-Cafe mailing list