/*
* Classic example grammar, which recognizes simple arithmetic expressions like * "2*(3+4)". The parser generated from this grammar then computes their value. */
start
= additive
additive
= left:multiplicative "+" right:additive { return left + right; } / multiplicative
multiplicative
= left:primary "*" right:multiplicative { return left * right; } / primary
primary
= integer / "(" additive:additive ")" { return additive; }
integer “integer”
= digits:$[0-9]+ { return parseInt(digits, 10); }