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, parseBool
using 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 it
using my other functiuons.
 
Ryan

Get closer to the jungle… I'm a Celebrity Get Me Out Of Here!