ryanbloor at hotmail.com
Sun Dec 9 16:40:36 EST 2007
hi sorry for vagueness. I am writing a basic Parser from scratch. So far I have functions; # removeSpaces # match - which checks if a string is a substring of another # orParser which combines two parser's abilities # Basic pasrers like... parseInt, parseTrue, parseFalse, parseBoolusing the orParser on True and False. What I want to do now is have a parseBinaryOp that recognises: parseBinaryOp "+" "(5 + 2) if" >>>gives>> [(EInt 5, EInt 2, "if")] So I think that I have to split the initial string into four parts. "+" becomes op '(' becomes tokenF ')' becomes tokenB "5" becomes e1 "2" becomes e2 parseBinaryOp :: String -> String -> [(Expr, Expr, String)]parseBinaryOp op str = let (tokenF,e1,op,e2,tokenB) = I am not sure how to go about separating the string for how I need itusing my other functiuons. Ryan
Celeb spotting – Play CelebMashup and win cool prizes
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe