diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/calc.lisp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/examples/calc.lisp b/examples/calc.lisp index 87993e8..7b2f9ef 100644 --- a/examples/calc.lisp +++ b/examples/calc.lisp @@ -11,15 +11,15 @@ (:seq <value> (:eof)) (:seq <unop> (:eof)) (:seq <binop> (:eof))) - :=> car) + :then car) (<expr> :-> (:or <subexpr> <value> <unop> <binop>)) (<subexpr> :-> (:item) - :?? listp - :=> (argot:parse calc <subexpr> )) - (<value> :-> (:item) :?? numberp) + :if listp + :then (argot:parse calc <subexpr>)) + (<value> :-> (:item) :if numberp) (<binop> :-> (:seq (:@ lhs <expr>) (:@ rhs (:+ (:seq (:or= + - / * ^ %) <expr>)))) - :=> (expand-binop lhs rhs)) + :then (expand-binop lhs rhs)) (<unop> :-> (:seq (:or= sin cos tan -) <expr>))) |