lama_byterun/stdlib/regression/test13.lama
Dmitry Boulytchev 61296c51e7 Massive renaming
2020-02-16 00:21:15 +03:00

14 lines
561 B
Text

import Ostap;
import Expr;
import Fun;
local a = token ("a"),
add = [token ("+"), fun (l, r) {Add (l, r)}],
sub = [token ("-"), fun (l, r) {Sub (l, r)}],
mul = [token ("*"), fun (l, r) {Mul (l, r)}],
div = [token ("/"), fun (l, r) {Div (l, r)}],
exp = expr ({[Right, {add, sub}], [Left, {mul, div}]}, a) (id);
printf ("%s\n", parseString (exp |> bypass (eof), "a+a-a").string);
printf ("%s\n", parseString (exp |> bypass (eof), "a*a/a*a").string);
printf ("%s\n", parseString (exp |> bypass (eof), "a*a+a/a-a*a").string)