# todo: calls (property access and function calls) ::= ::= "{" { } "}" ::= | | | | | | | | ::= "let" "=" ";" ::= "=" ";" ::= "fn" ::= "(" { { "," } } ")" ::= "if" { } ::= "else" ( | ) ::= "loop" ::= "while" ::= "break" ";" ::= "return" { } ";" ::= ";" ::= ::= { "or" } ::= { "and" } ::= { ("!=" | "==") } ::= { (">" | "<" | ">=" | "<=") } ::= { ("-" | "+") } ::= { ( "*" | "/" | "%" ) } ::= ( "not" | "-" ) ::= | | | | "false" | "true" | "null" = "{}" = "[" { { "," } } "]"