/* FZL (FromZero Language) syntax */ /* Version 1 */ /* Authors: */ /* - Samsonium (https://git.samsonium.dev/Samsonium) */ ::= <_> + ::= | | | | | <_> ::= " "* ::= " "+ ::= <_> ";" <_> ::= "{" <_> * "}" <_> ::= "return" ( )? <_> ";" <_> ::= "class" <_> "{" <_> ( | )* "}" <_> ::= "fn" <_> "(" <_> ( (<_> "," <_> )*)? ")" <_> ::= ::= "if" <_> "(" <_> <_> ")" <_> (<_> "else" )? /* Assign (lowest epxression priority, right-associative) */ ::= ::= (<_> "=" <_> )? ::= ("new" ) | ::= (<_> "||" <_> )* ::= (<_> "&&" <_> )* ::= (<_> <_> )* ::= "==" | "!=" | "<=" | ">=" | "<" | ">" ::= (<_> ("+" | "-") <_> )* ::= (<_> ("*" | "/" | "%") <_> )* ::= (<_> "^" <_> )? ::= (("!" | "-" | "+") <_>)* /* Postfix: chain of calls and dots */ ::= ( | )* ::= <_> "(" <_> ( (<_> "," <_> )*)? <_> ")" ::= <_> "." <_> ::= | | "(" <_> <_> ")" | ::= ::= "int" | "uint" | "bool" | "char" | "str" | "i8" | "i16" | "i32" | "i64" | "u8" | "u16" | "u32" | "u64" ::= | | "true" | "false" | "null" ::= ([A-z] | "_") | ([A-z] | [0-9] | "_")* ::= ('"' [^"]* '"') | ("'" [^']* "'")