From e6bb770a52980ef3d85c2d4b93fb240c026ce7f7 Mon Sep 17 00:00:00 2001 From: tomsmeding Date: Thu, 4 Aug 2016 21:53:16 +0200 Subject: Advance parser --- LANGUAGE.txt | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'LANGUAGE.txt') diff --git a/LANGUAGE.txt b/LANGUAGE.txt index 9d72f08..0e7066b 100644 --- a/LANGUAGE.txt +++ b/LANGUAGE.txt @@ -1,21 +1,21 @@ Statements are terminated by ';'. The usual infix expression rules apply, with the following precedence table: -(lower precedence number means tighter binding) +(higher precedence number means tighter binding) Operators Precedence Associativity - ** 1 Right - - ! ~ 2 Prefix unary - * / % 3 Left - + - 4 Left - & 5 Left - ^ 6 Left + ** 14 Right + - ! ~ 12 Prefix (unary) + * / // % 11 Left + + - 10 Left + & 9 Left + ^ 8 Left | 7 Left - < > <= >= 8 Nonassociative - == != 9 Nonassociative - && 10 Left (short-circuiting) - ^^ 11 Left - || 12 Left (short-circuiting) - = 13 Right (also += -= *= /= %= **= &= ^= |=) + < > <= >= 6 Nonassociative + == != 5 Nonassociative + && 4 Left (short-circuiting) + ^^ 3 Left + || 2 Left (short-circuiting) + = 1 Right (also += -= *= /= %= **= &= ^= |=) break and continue get parsed to calls to the __break() and __continue() -- cgit v1.2.3-70-g09d2