Quick actions

cmd+k|ctrl+k

Navigation

Languages

Untitled

Snippet info

Language

Raku

Visibility

unlisted

Author

legacy-anonymous

Created

2021-05-25T11:02:49.163007Z

Updated

2021-05-25T11:02:49.163007Z

say 'Hello World!';grammar AdventExpressionGrammar {
  rule TOP {
    <expr>
  }

  token value { \d+ }

  token operators { '+' | '-' | '*' | '/' }

  rule expr {
    '(' <expr> ')'
    |
    <value> <operators> [ <expr> | <value> ]
  }
}

say AdventExpressionGrammar.parse('1 + 2');
say AdventExpressionGrammar.parse('(1 + 2)');
say AdventExpressionGrammar.parse('1 + 2 * 3 + 4 * 5 + 6').gist;
say AdventExpressionGrammar.parse('1 + (2 * 3) + (4 * (5 + 6))').gist;
INFO