module Calculator where import Utils import Expr import Parser data Law = Law LawName Equation deriving Show type LawName = String type Equation = (Expr,Expr) law :: Parser Law law = do name <- upto ':' eqn <- equation return (Law name eqn) equation :: Parser Equation equation = do lh <- expr symbol "=" rh <- expr return (lh, rh)