Plange


This page is generated from the syntax specification. Tags, identities, and all {IC} (optional whitespace and comment regions) are filtered from the syntax display to improve readability. See the specification for the full grammar specification. The root production of the grammar is "STATEMENT_SCOPE".

Subpage Listing

ADDITION no doc string EXPRESSION "+" EXPRESSION
ADDITION_ASSIGNMENT Add the two operands and assign the result to the first. EXPRESSION ("+<-"|"+←"|"⥆") EXPRESSION
ADD_SUB the analytic value storing the simultaneous results of addition and subtraction EXPRESSION ("±"|"+-") EXPRESSION
ADD_SUB_ASSIGNMENT Assign the analytic value storing the simultaneous results of addition and subtraction of the two operands and assign the result to the first. EXPRESSION ("±"|"+-") ("<-"|"←") EXPRESSION
ALL constrain ALL elements of a Collection to be true ("∀"|"all") EXPRESSION
ALLOCATION create an object on the heap "alloc" PARENTHETICAL_INVOCATION
AND no doc string EXPRESSION ("∧"|"and") EXPRESSION
AND_ASSIGNMENT And the two operands and assign the result to the first. EXPRESSION ("∧"|"and") ("<-"|"←") EXPRESSION
ARGUMENT_PACK no doc string EXPRESSION "..."
ARRAY no doc string "[" [EXPRESSION {"," EXPRESSION}] "]"
ARRAY_ARGUMENTS no doc string [ARRAY_INDEXER] {"," [ARRAY_INDEXER]}
ARRAY_INDEXER no doc string EXPRESSION | ARGUMENT_PACK | SLICE
ARRAY_INVOCATION no doc string "[" [ARRAY_ARGUMENTS] "]"
ASM_EXPRESSION no doc string ASM_IDENTIFIER | ASM_PTR_ARITHMETIC_ATT | ASM_PTR_ARITHMETIC_INTEL | NON_FRACTIONAL
ASM_FUNCTION no doc string ["(" [PARAMETER {"," PARAMETER}] ")"] [FUNCTION_MODIFIER_0] "asm" "{" ASM_SCOPE "}"
ASM_IDENTIFIER no doc string ["%"] IDENTIFIER
ASM_OP no doc string (lowercase_letter) {lowercase_letter}
ASM_PTR_ARITHMETIC_ATT no doc string (ASM_IDENTIFIER ":" NON_FRACTIONAL) | (ASM_IDENTIFIER ":" NON_FRACTIONAL ASM_PTR_ARITHMETIC_ATT_REG) | (NON_FRACTIONAL ASM_PTR_ARITHMETIC_ATT_REG)
ASM_PTR_ARITHMETIC_ATT_REG no doc string "(" [ASM_IDENTIFIER] ["," ASM_IDENTIFIER ["," NON_NEG_NON_FRACTIONAL]] ")"
ASM_PTR_ARITHMETIC_INTEL no doc string [("BYTE"|"WORD"|"DWORD"|"QWORD") " PTR"] "[" [ASM_IDENTIFIER ":"] ASM_IDENTIFIER ["+" ASM_IDENTIFIER ["*" NON_NEG_NON_FRACTIONAL]] [("+"|"-") NON_NEG_INTEGER] "]"
ASM_SCOPE no doc string {IC | ASM_STATEMENT}
ASM_STATEMENT no doc string ASM_OP [ASM_EXPRESSION {"," [ASM_EXPRESSION]}] "\n"
ASSIGNMENT place the given value(s) into the given variable(s) IDENTIFIER_SPECIFICATION ASSIGNMENT_NODE
ASSIGNMENT_NODE no doc string ("←"|"<-") (EXPRESSION | IDENTIFIER_SPECIFICATION (ASSIGNMENT_NODE))
ATTRIBUTE no doc string "@" EXPRESSION "@"
BIJECTION a bijection exists between the left and right hand operands EXPRESSION ("↔"|"<->") EXPRESSION
BINARY_ARITHMETIC_OP the collection of binary operators that work on numbers (among other things) ADD_SUB | ADDITION | DIVISION | EXPONENTIATION | INTEGER_DIVISION | MODULATION | MULTIPLICATIVE_OP | SHIFTL | SHIFTR | SUBTRACTION
BINARY_COLLECTION_OP binary operators on collections BIJECTION | INTERSECTION | SYMMETRIC_DIFFERENCE | UNION
BINARY_LOGICAL_OP no doc string AND | IFF | IMPLICATION | MAPS_TO | NAND | NOR | OR | XOR
BINARY_OP a sequence of one or more punctuation (and special) characters representing an infix operator BINARY_ARITHMETIC_OP | BINARY_COLLECTION_OP | BINARY_LOGICAL_OP | BITWISE_OP | CONSTRUCTIVE_OP | RELATIONAL_OP
BITWISE_OP no doc string BIT_AND | BIT_OR | BIT_XOR
BIT_AND no doc string EXPRESSION "&&" EXPRESSION
BIT_AND_ASSIGNMENT Bitwise and the two operands and assign the result to the first. EXPRESSION "&&" ("<-"|"←") EXPRESSION
BIT_NOT no doc string "~~" EXPRESSION
BIT_NOT_ASSIGNMENT Bitwise not the operand and assign the result to it. EXPRESSION "~~" ("<-"|"←")
BIT_OR no doc string EXPRESSION "||" EXPRESSION
BIT_OR_ASSIGNMENT Bitwise or the two operands and assign the result to the first. EXPRESSION "||" ("<-"|"←") EXPRESSION
BIT_XOR no doc string EXPRESSION "^^" EXPRESSION
BIT_XOR_ASSIGNMENT Bitwise xor the two operands and assign the result to the first. EXPRESSION "^^" ("<-"|"←") EXPRESSION
BLOCK no doc string "{" STATEMENT_SCOPE "}"
BOOL the two ordinals of the Bool type "true" | "false"
BREAK terminate the containing for, do, or while/until loop "break" [("[" EXPRESSION "]") | (IC IDENTIFIER)]
CARDINALITY no doc string "#" EXPRESSION
CAST change the type of the specified expression to the parenthesized type PARENTHETICAL EXPRESSION
CASTS no doc string EXPRESSION "casts" EXPRESSION
CEILING no doc string ("⌈" EXPRESSION "⌉") | ("|'" EXPRESSION "'|")
COMMENT an inline comment "/*" {all} "*/"
COMPLEMENT the universal set excluding the elements of the collection EXPRESSION "ᶜ"
COMPOSITION function composition operator EXPRESSION ("∘"|"_o_") EXPRESSION
COMPOSITION_ASSIGNMENT Compose the two operands and assign the result to the first. EXPRESSION ("∘"|"_o_") ("<-"|"←") EXPRESSION
COMPOUND no doc string EXPRESSION "|" EXPRESSION
COMPOUND_ASSIGNMENT Compound the two operands and assign the result to the first. EXPRESSION "|" ("<-"|"←") EXPRESSION
CONDITIONAL ternary conditional (EXPRESSION) "?" (EXPRESSION) ":" (EXPRESSION)
CONSTRUCTIVE_OP operators that are constructive for making values COMPOSITION | COMPOUND | PREPEND | NULL_COALESCE
CONTINUE begin the next iteration in the containing for, do, or while/until loop "continue" [("[" EXPRESSION "]") | (IC IDENTIFIER)]
CROSS_PRODUCT scalar multiplication or Vector<3, N> cross product EXPRESSION ("×"|"_x_") EXPRESSION
CROSS_PRODUCT_ASSIGNMENT Cross multiply the two operands and assign the result to the first. EXPRESSION ("×"|"_x_") ("<-"|"←") EXPRESSION
DATE no doc string DATE_YEAR_MONTH_DAY | DATE_YEAR_DAY
DATE_TIME no doc string DATE "T" TIME
DATE_YEAR_DAY no doc string decimal_digit decimal_digit decimal_digit decimal_digit "-" decimal_digit decimal_digit decimal_digit
DATE_YEAR_MONTH_DAY a date literal decimal_digit decimal_digit decimal_digit decimal_digit "-" decimal_digit decimal_digit "-" decimal_digit decimal_digit
DEFINITION define a constant, an alias for the valuation of a specified expression IDENTIFIER_SPECIFICATION ":=" EXPRESSION
DELTA no doc string ("Δ"|"_delta_") ["^" WHOLE_NUMBER] EXPRESSION
DIMENSION a dimension used in dimensional analysis IDENTIFIER | DIMENSIONAL_ANALYSIS_OP
DIMENSIONAL_ANALYSIS_OP operators in a dimension UNIT_DIVISION | UNIT_EXPONENTIATION | UNIT_MULTIPLICATION
DIMENSIONAL_NUMBER a number with a trailing dimension NON_NEG_NUMBER DIMENSION
DIVISION division or splits the left hand side collection into a collection of collections each the size of the right hand side EXPRESSION ("÷"|"/") EXPRESSION
DIVISION_ASSIGNMENT Add the two operands and assign the result to the first. EXPRESSION ("÷"|"/") ("<-"|"←") EXPRESSION
DO invoke a specified nullary void function (expression) once and then repeatedly while or until the parenthetical evaluates to true (when coerced to bool), unless the optional portion is omitted, in which case the function is invoked indefinitely "do" EXPRESSION [ ("while"|"until") (PARENTHETICAL)]
DOT_PRODUCT scalar multiplication or Vector inner product EXPRESSION ("⋅"|"_dot_") EXPRESSION
DOWNCASTS no doc string EXPRESSION "downcasts" EXPRESSION
EMBEDDED_COMMENT a comment bounded by arbirtrarily-sized delimiters "/***" EMBEDDED_COMMENT_INTERIOR "***/"
EMBEDDED_COMMENT_INTERIOR no doc string PAYLOAD | "*" EMBEDDED_COMMENT_INTERIOR "*"
EMBEDDED_NEWLINE_STRING no doc string "\"\"\"" EMBEDDED_NEWLINE_STRING_INTERIOR "\"\"\""
EMBEDDED_NEWLINE_STRING_INTERIOR no doc string ("\n" PAYLOAD "\n") | ("\"" EMBEDDED_NEWLINE_STRING_INTERIOR "\"")
EMBEDDED_STRING a string bounded by arbirtrarily-sized delimiters "\"\"\"" EMBEDDED_STRING_INTERIOR "\"\"\""
EMBEDDED_STRING_INTERIOR no doc string PAYLOAD | ("\"" EMBEDDED_STRING_INTERIOR "\"")
END_OF_LINE_COMMENT no doc string "//" {not_newline} "\n"
ENUM makes a compound type with static members for each of the elements, and each of those elements inherit/implement those specified inheritance list "enum" ["inheriting" INHERITANCE_LIST] ["implementing" INHERITANCE_LIST] "{" [ENUM_ELEMENT {";" ENUM_ELEMENT}] "}"
ENUM_ELEMENT no doc string [XML_DOC_STRING] IDENTIFIER [":=" EXPRESSION]
EQUALITY one or more equality relations EXPRESSION EQUALITY_NODE
EQUALITY_NODE no doc string "=" EXPRESSION [EQUALITY_NODE]
EXACTLY no doc string EXPRESSION "exactly" EXPRESSION
EXISTS a constraint asserting that at least one element of the specified Collection is true ("∃"|"exists") EXPRESSION
EXISTS_ONE a constraint asserting that exactly one element of the specified Collection is true ("∃!"|"exists!") EXPRESSION
EXPONENTIATION no doc string EXPRESSION "^" EXPRESSION
EXPONENTIATION_ASSIGNMENT Exponentiate the two operands and assign the result to the first. EXPRESSION "^" ("<-"|"←") EXPRESSION
EXPRESSION an evaluation tree containing constants, variables, operators, invocations, and sub expressions ARRAY | ASM_FUNCTION | BINARY_OP | BOOL | CAST | CEILING | COMPLEMENT | CONDITIONAL | DATE | DATE_TIME | DELTA | DIMENSIONAL_NUMBER | EMBEDDED_STRING | ENUM | EQUALITY | FLOOR | FUNCTION | GREATER | IDENTIFIER | IF | INVOCATION | LESSER | LIST | MAGNITUDE | MAP | MEMBER_ACCESS | NEAREST_INTEGER | NON_NEG_NUMBER | OBJECT | PARENTHETICAL | RANGE | REGEX | SET | SET_COMPREHENSION | SUBSET | SUPERSET | SWIZZLE | THIS | THIS_FUNC | THIS_TYPE | TIME | TUPLE | TYPE | UNARY_OP | VECTOR_NORM | "context" | "null" | "unit" | c_string
FACTORIAL no doc string EXPRESSION "!"
FACTORIAL_ASSIGNMENT Factorial the operand and assign the result to it. EXPRESSION "!" ("<-"|"←")
FLOOR no doc string ("⌊" EXPRESSION "⌋") | ("|_" EXPRESSION "_|")
FOR evaluate the last expression repeatedly while the second expression is true, all after evaluating the optional STATEMENT_SCOPE "for" "(" [STATEMENT_SCOPE] (EXPRESSION) ";" [FOR_STEP_LIST] ")" EXPRESSION
FOR_COLLECTION evaluate the last expression repeatedly while iterating over the elements of the specified Collection "for" "(" (([(TYPE_DEREFERENCE | IMPLICIT_TYPE_DEREFERENCE)] IDENTIFIER) | EXPRESSION) ("in"|"∈") (EXPRESSION) ")" EXPRESSION
FOR_STEP no doc string IDENTIFIER FOR_STEP_NODE
FOR_STEP_LIST no doc string FOR_STEP {"," FOR_STEP}
FOR_STEP_NODE no doc string ("←"|"<-") (EXPRESSION | IDENTIFIER (FOR_STEP_NODE))
FREE no doc string "free" EXPRESSION
FUNCTION creates a function ["(" [PARAMETER {"," PARAMETER}] ")"] [FUNCTION_MODIFIER_0] BLOCK
FUNCTION_MODIFIER_0 no doc string FUNCTION_MODIFIER_STABILITY|FUNCTION_MODIFIER_1
FUNCTION_MODIFIER_1 no doc string FUNCTION_MODIFIER_THROWING|FUNCTION_MODIFIER_2
FUNCTION_MODIFIER_2 no doc string FUNCTION_MODIFIER_ATOMIC|FUNCTION_MODIFIER_3
FUNCTION_MODIFIER_3 no doc string FUNCTION_MODIFIER_PLATFORM|FUNCTION_MODIFIER_4
FUNCTION_MODIFIER_4 no doc string FUNCTION_MODIFIER_MODEL|FUNCTION_MODIFIER_CALLING_CONVENTION
FUNCTION_MODIFIER_ATOMIC no doc string "atomic" [IC FUNCTION_MODIFIER_3]
FUNCTION_MODIFIER_CALLING_CONVENTION no doc string "c_call" | "fast_call" | "cold_call" | "ghc_call" | "hipe_call" | "webkit_js_call" | "any_reg_call" | "preserve_most_call" | "preserve_all_call" | "swift_call" | "cxx_fast_tls_call" | "first_target_call" | "x86_std_call" | "X86_fast_call" | "arm_apcs_call" | "arm_aapcs_call" | "arm_aapcs_vfp_call" | "msp430_intr_call" | "x86_this_call" | "ptx_kernel_call" | "ptx_device_call" | "spir_func_call" | "spir_kernel_call" | "intel_ocl_bi_call" | "x86_64_sysv_call" | "x86_64_win64_call" | "x86_vector_call" | "hhvm_call" | "x86_intr_call" | "avr_intr_call" | "avr_signal_call" | "avr_builtin_call"
FUNCTION_MODIFIER_MODEL no doc string ("pure" | "imperative" | "opaque") [IC FUNCTION_MODIFIER_CALLING_CONVENTION]
FUNCTION_MODIFIER_PLATFORM no doc string PLATFORM {IC PLATFORM} [IC FUNCTION_MODIFIER_4]
FUNCTION_MODIFIER_STABILITY no doc string ("stable" | "unstable") [IC FUNCTION_MODIFIER_1]
FUNCTION_MODIFIER_THROWING no doc string "throwing" [ARRAY] [IC FUNCTION_MODIFIER_2]
GREATER one or more greater, greater or equals, or equals relations EXPRESSION GREATER_NODE
GREATER_NODE no doc string ("="|">"|"=>"|"≥") EXPRESSION [GREATER_NODE]
HAS the in operator, backward EXPRESSION ("∋"|"has") EXPRESSION
HEX a hexidecimal number "0x" hexadecimal_digit {hexadecimal_digit}
IC intermediary content - regions that whitespaces and comments can go COMMENT | EMBEDDED_COMMENT | END_OF_LINE_COMMENT | WS
IDENTIFIER text that uniquely identifies a constant or variable within a scope (letter | "_") {letter | number | "_"}
IDENTIFIER_SPECIFICATION no doc string [XML_DOC_STRING] {ATTRIBUTE} [VISIBILITY_MODIFIER] ["static"] ["extern"] IDENTIFIER
IF returns the expression corresponding to the first parenthetical that evaluates to true when coerced to a boolean, or the else case if none of them evaluate to true, assuming that the else case is present, otherwise returning void "if" (PARENTHETICAL) (EXPRESSION) {"elif" (PARENTHETICAL) (EXPRESSION)} [ "else" (EXPRESSION)]
IFF semantic equivalence EXPRESSION ("⇔"|"<=>") EXPRESSION
IMPLEMENTS no doc string EXPRESSION "implements" EXPRESSION
IMPLICATION implication EXPRESSION ("⇒"|"=>") EXPRESSION
IMPLICATION_ASSIGNMENT Implicate the two operands and assign the result to the first. EXPRESSION ("⇒"|"=>") ("<-"|"←") EXPRESSION
IMPLICIT_TYPE_DEREFERENCE use the type inferred on the right hand side "<" ">"
IMPORT bring the specified "import" EXPRESSION
IN Collection membership EXPRESSION ("∈"|"in") EXPRESSION
INEQUALITY no doc string EXPRESSION ("≠"|"/=") EXPRESSION
INHERITANCE_ITEM_PREFIX no doc string (VISIBILITY_MODIFIER | VISIBILITY_MODIFIER IC "diamond" | "diamond") IC
INHERITANCE_LIST see: type [INHERITANCE_ITEM_PREFIX] EXPRESSION {"," [INHERITANCE_ITEM_PREFIX] EXPRESSION}
INHERITS no doc string EXPRESSION "inherits" EXPRESSION
INTEGER_DIVISION same as ⌊x/y⌋ or collection difference (similar to set difference) EXPRESSION "\\" EXPRESSION
INTEGER_DIVISION_ASSIGNMENT Integer divide the two operands and assign the result to the first. EXPRESSION "\\" ("<-"|"←") EXPRESSION
INTERSECTION Collection intersection EXPRESSION "∩" EXPRESSION
INTERSECTION_ASSIGNMENT Set intersect the two operands and assign the result to the first. EXPRESSION "∩" ("<-"|"←") EXPRESSION
INVOCATION invoke a function, type-function or array-function EXPRESSION (PARENTHETICAL_INVOCATION | ARRAY_INVOCATION | TYPE_INVOCATION)
IS no doc string EXPRESSION "is" EXPRESSION
KLEENE_STAR the free monoid operator EXPRESSION "*"
LESSER one or more lesser, lesser or equals, or equals relations EXPRESSION LESSER_NODE
LESSER_NODE no doc string ("="|"<"|"=<"|"≤") EXPRESSION [LESSER_NODE]
LIST a Collection of items "[|" [EXPRESSION {", " EXPRESSION}] "|]"
LOCK no doc string "lock" PARENTHETICAL BLOCK
LOOP evaluate an expression repeatedly while or until a parenthetical evaluates to true ("while" | "until") PARENTHETICAL EXPRESSION
MAGNITUDE absolute value, vector magnitude, cardinality "|" EXPRESSION "|"
MAP create an associative Collection implementing Map "{" [EXPRESSION ":" EXPRESSION {"," EXPRESSION ":" EXPRESSION}] "}"
MAPS_TO function type builder ["volatile" IC] ["const" IC] (EXPRESSION) ("→"|"->") (EXPRESSION)
MEMBER_ACCESS no doc string EXPRESSION "." IDENTIFIER
MEMBER_OFFSET no doc string "@" (NATURAL_NUMBER)
MODULATION mod operator or returns a collection containing the elements that would not be consumed from the end of the left hand side by taking the chunk of the right hand side EXPRESSION "%" EXPRESSION
MODULATION_ASSIGNMENT Modulate the two operands and assign the result to the first. EXPRESSION "%" ("<-"|"←") EXPRESSION
MULTIPLICATION scalar multiplication, cartesian product EXPRESSION "*" EXPRESSION
MULTIPLICATION_ASSIGNMENT Multiply the two operands and assign the result to the first. EXPRESSION "*" ("<-"|"←") EXPRESSION
MULTIPLICATIVE_OP no doc string CROSS_PRODUCT | DOT_PRODUCT | MULTIPLICATION
NAND no doc string EXPRESSION ("↑"|"nand") EXPRESSION
NAND_ASSIGNMENT Nand the two operands and assign the result to the first. EXPRESSION ("↑"|"nand") ("<-"|"←") EXPRESSION
NATURAL_NUMBER no doc string decimal_digit {decimal_digit}
NEAREST_INTEGER round to the nearest integer ("⌊" EXPRESSION "⌉") | ("|_" EXPRESSION "'|")
NEGATION no doc string "-" EXPRESSION
NEGATION_ASSIGNMENT Negate the operand and assign the result to it. EXPRESSION "-" ("<-"|"←")
NON_FRACTIONAL no doc string ["-"] NON_NEG_NON_FRACTIONAL
NON_NEG_FRACTIONAL a number with a decimal point (decimal_digit {decimal_digit} "." {decimal_digit}) | ("." decimal_digit {decimal_digit})
NON_NEG_INTEGER no doc string (NON_ZERO_DECIMAL_DIGIT {decimal_digit}) | "0"
NON_NEG_NON_FRACTIONAL no doc string NON_NEG_INTEGER | HEX | OCTAL
NON_NEG_NUMBER no doc string NON_NEG_NON_FRACTIONAL | NON_NEG_FRACTIONAL
NON_ZERO_DECIMAL_DIGIT used for constructing number "1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9"
NOR no doc string EXPRESSION ("↓"|"nor") EXPRESSION
NOR_ASSIGNMENT Nor the two operands and assign the result to the first. EXPRESSION ("↓"|"nor") ("<-"|"←") EXPRESSION
NOT boolean not ("¬"|"~") EXPRESSION
NOT_ASSIGNMENT Not the operand and assign the result to it. EXPRESSION ("¬"|"~") ("<-"|"←")
NOT_HAS not_in, backward EXPRESSION ("∌"|"/has") EXPRESSION
NOT_IN Collection anti-membership EXPRESSION ("∉"|"/in") EXPRESSION
NULL_COALESCE return the first expression if non-null otherwise return the second expression EXPRESSION "??" EXPRESSION
NULL_COALESCE_ASSIGNMENT Null coalesce the two operands and assign the result to the first. EXPRESSION "??" ("<-"|"←") EXPRESSION
OBJECT no doc string "object" ["inheriting" INHERITANCE_LIST] ["implementing" INHERITANCE_LIST] "{" TYPE_SCOPE "}"
OCTAL octal number "0" octal_digit {octal_digit}
OP_ASSIGNMENT Perform an operation on one or two operands and assign the result to the first. ADD_SUB_ASSIGNMENT | ADDITION_ASSIGNMENT | AND_ASSIGNMENT | BIT_AND_ASSIGNMENT | BIT_NOT_ASSIGNMENT | BIT_OR_ASSIGNMENT | BIT_XOR_ASSIGNMENT | COMPOUND_ASSIGNMENT | COMPOSITION_ASSIGNMENT | CROSS_PRODUCT_ASSIGNMENT | DIVISION_ASSIGNMENT | EXPONENTIATION_ASSIGNMENT | FACTORIAL_ASSIGNMENT | IMPLICATION_ASSIGNMENT | INTEGER_DIVISION_ASSIGNMENT | INTERSECTION_ASSIGNMENT | MODULATION_ASSIGNMENT | MULTIPLICATION_ASSIGNMENT | NAND_ASSIGNMENT | NEGATION_ASSIGNMENT | NOR_ASSIGNMENT | NOT_ASSIGNMENT | NULL_COALESCE_ASSIGNMENT | OR_ASSIGNMENT | PRE_DEC | PRE_INC | PREPEND_ASSIGNMENT | POST_DEC | POST_INC | RADICAL_ASSIGNMENT | SHIFTL_ASSIGNMENT | SHIFTR_ASSIGNMENT | SUBTRACTION_ASSIGNMENT | SYMMETRIC_DIFFERENCE_ASSIGNMENT | UNION_ASSIGNMENT | XOR_ASSIGNMENT
OR no doc string EXPRESSION ("∨"|"or") EXPRESSION
OR_ASSIGNMENT Or the two operands and assign the result to the first. EXPRESSION ("∨"|"or") ("<-"|"←") EXPRESSION
PARAMETER declares a formal argument of a function PARAMETER_NATURAL | PARAMETER_ANALYTIC
PARAMETER_ANALYTIC no doc string EXPRESSION [ "=" EXPRESSION]
PARAMETER_NATURAL no doc string ([TYPE_DEREFERENCE] IDENTIFIER ["..."]) | ([(TYPE_DEREFERENCE | IMPLICIT_TYPE_DEREFERENCE)] IDENTIFIER ["..."] "=" EXPRESSION ["..."])
PARENTHETICAL an expression in parenthesis "(" EXPRESSION ")"
PARENTHETICAL_INVOCATION no doc string "(" [STANDARD_ARGUMENTS] ")"
PAYLOAD no doc string all {all}
PLATFORM no doc string "_" (letter | number) {letter | number | "_"}
POST_DEC no doc string EXPRESSION "--"
POST_INC no doc string EXPRESSION "++"
PREPEND create a new Collection starting with the left hand side followed by the elements of the right hand side Collection EXPRESSION "&" EXPRESSION
PREPEND_ASSIGNMENT Prepend the second operand to the first and assign the result to the first. EXPRESSION "&" ("<-"|"←") EXPRESSION
PRE_DEC no doc string "--" EXPRESSION
PRE_INC no doc string "++" EXPRESSION
RADICAL no doc string ("√"|"sqrt") EXPRESSION
RADICAL_ASSIGNMENT Square root the operand and assign the result to it. EXPRESSION ("√"|"sqrt") ("<-"|"←")
RANGE create a totally-ordered open/closed/half-open discreet/continuous Collection "(" "..." EXPRESSION ("]" | ")") | ("[" | "(") EXPRESSION "..." ")" | ("(" | "[") EXPRESSION "..." EXPRESSION ("]" | ")")
READ_LOCK no doc string "read_lock" PARENTHETICAL EXPRESSION
RECORD no doc string "record" IC TYPE
REGEX no doc string "R" c_string
RELATIONAL_COLLECTION_OP relational operators on collections HAS | IN | NOT_HAS | NOT_IN
RELATIONAL_OP no doc string CASTS | DOWNCASTS | EXACTLY | IMPLEMENTS | INEQUALITY | INHERITS | IS | RELATIONAL_COLLECTION_OP | UPCASTS
RETURN exit the current function, optionally returning a value "return" ["[" EXPRESSION "]"] [ EXPRESSION]
SET no doc string "{|" [EXPRESSION {"," EXPRESSION}] "|}"
SET_COMPREHENSION create a Collection, substituting variables bound in the right hand side into the left hand side "{" EXPRESSION "|" EXPRESSION "}"
SHIFTL shift left EXPRESSION "<<" EXPRESSION
SHIFTL_ASSIGNMENT Shift the first operand left by the number of bits specified in the signed second operand and assign the result to the first. EXPRESSION "<<" ("<-"|"←") EXPRESSION
SHIFTR shift right EXPRESSION ">>" EXPRESSION
SHIFTR_ASSIGNMENT Shift the first operand right by the number of bits specified in the signed second operand and assign the result to the first. EXPRESSION ">>" ("<-"|"←") EXPRESSION
SLICE used in ARRAY_INVOCATION EXPRESSION ":" EXPRESSION
STANDARD_ARGUMENTS no doc string [(EXPRESSION|ARGUMENT_PACK)] {"," [(EXPRESSION|ARGUMENT_PACK)]}
STATEMENT top-level statement syntax (ASSIGNMENT | BREAK | CONTINUE | DEFINITION | DO | EXPRESSION | FOR | FOR_COLLECTION | FREE | IMPORT | LOCK | LOOP | OP_ASSIGNMENT | READ_LOCK | RETURN | THROW | TRY | TYPE_CONSTRAINT | WRITE_LOCK | USING) ";"
STATEMENT_SCOPE zero or more statements, the top level syntax rule for source files {IC | STATEMENT}
SUBSET One or more subset, proper subset, or equality relations EXPRESSION SUBSET_NODE
SUBSET_NODE no doc string ("="|"⊆"|"subs"|"⊂"|"psubs") EXPRESSION [SUBSET_NODE]
SUBTRACTION no doc string EXPRESSION "-" EXPRESSION
SUBTRACTION_ASSIGNMENT Subtract the two operands and assign the result to the first. EXPRESSION "-" ("<-"|"←") EXPRESSION
SUPERSET One or more superset, proper superset, or equality relations EXPRESSION SUPERSET_NODE
SUPERSET_NODE no doc string ("="|"⊇"|"sups"|"⊃"|"psups") EXPRESSION [SUPERSET_NODE]
SWIZZLE no doc string EXPRESSION ("⋮" | "_swiz_") EXPRESSION
SYMMETRIC_DIFFERENCE the set-theoretic symmetric difference (Collection xor) EXPRESSION "⊖" EXPRESSION
SYMMETRIC_DIFFERENCE_ASSIGNMENT Compute the unique elements in both operands and assign the result to the first. EXPRESSION "⊖" ("<-"|"←") EXPRESSION
THIS no doc string "this" ["[" EXPRESSION "]"]
THIS_FUNC no doc string "this_func" ["[" EXPRESSION "]"]
THIS_TYPE no doc string "this_type" ["[" EXPRESSION "]"]
THROW raise an exception with an optional value which must implement Exception if specified "throw" ["[" EXPRESSION "]"] [EXPRESSION]
TIME no doc string ["-"] decimal_digit decimal_digit ":" decimal_digit decimal_digit ":" decimal_digit decimal_digit ["." decimal_digit {decimal_digit}] ["Z" | (("+"|"-") decimal_digit decimal_digit [":" decimal_digit decimal_digit])]
TRY executes the specified nullary void function of the first expression, catching exceptions that pattern match the function(s) of the second expression, and then executes the third expression unconditionally "try" EXPRESSION "catch" EXPRESSION {"catch" EXPRESSION} ["finally" EXPRESSION]
TUPLE create a finite, ordered tuple of elements "(|" EXPRESSION {"," EXPRESSION} "|)"
TYPE create a type "type" ["inheriting" INHERITANCE_LIST] ["implementing" INHERITANCE_LIST] "{" TYPE_SCOPE "}"
TYPE_CONSTRAINT no doc string (TYPE_CONSTRAINT_SPECIFICATION) (TYPE_CONSTRAINT_ELEMENT) {"," TYPE_CONSTRAINT_ELEMENT}
TYPE_CONSTRAINT_DECLARATION no doc string IDENTIFIER_SPECIFICATION [PARENTHETICAL_INVOCATION]
TYPE_CONSTRAINT_ELEMENT no doc string TYPE_CONSTRAINT_DECLARATION | ASSIGNMENT | DEFINITION
TYPE_CONSTRAINT_SPECIFICATION no doc string [XML_DOC_STRING] {ATTRIBUTE} [VISIBILITY_MODIFIER] ["static"] ["extern"] (TYPE_DEREFERENCE | VOLATILE_TYPE_DEREFERENCE | IMPLICIT_TYPE_DEREFERENCE | VOLATILE_IMPLICIT_TYPE_DEREFERENCE)
TYPE_DEREFERENCE use a variable/constant as a typename "<" EXPRESSION ">"
TYPE_INVOCATION no doc string "<" [STANDARD_ARGUMENTS] ">"
TYPE_SCOPE zero or more statements or member declarations/definitions, used strictly in the TYPE syntax only {TYPE_STATEMENT}
TYPE_SCOPE_ASSIGNMENT no doc string IDENTIFIER_SPECIFICATION [MEMBER_OFFSET] TYPE_SCOPE_ASSIGNMENT_NODE
TYPE_SCOPE_ASSIGNMENT_NODE no doc string ("←"|"<-") (EXPRESSION | (IDENTIFIER_SPECIFICATION [MEMBER_OFFSET] (TYPE_SCOPE_ASSIGNMENT_NODE)))
TYPE_SCOPE_TYPE_CONSTRAINT no doc string (TYPE_CONSTRAINT_SPECIFICATION) (TYPE_SCOPE_TYPE_CONSTRAINT_ELEMENT) {"," TYPE_SCOPE_TYPE_CONSTRAINT_ELEMENT}
TYPE_SCOPE_TYPE_CONSTRAINT_DECLARATION no doc string IDENTIFIER_SPECIFICATION [(PARENTHETICAL_INVOCATION)] [MEMBER_OFFSET]
TYPE_SCOPE_TYPE_CONSTRAINT_ELEMENT no doc string TYPE_SCOPE_TYPE_CONSTRAINT_DECLARATION | TYPE_SCOPE_ASSIGNMENT | DEFINITION
TYPE_STATEMENT top-level type syntax ((VISIBILITY_MODIFIER ":") | TYPE_SCOPE_TYPE_CONSTRAINT | STATEMENT) ";"
UNARY_ARITHMETIC_OP no doc string FACTORIAL | NEGATION | RADICAL
UNARY_LOGICAL_OP no doc string ALL | EXISTS | EXISTS_ONE | NOT
UNARY_OP no doc string ALLOCATION | CARDINALITY | KLEENE_STAR | UNARY_ARITHMETIC_OP | UNARY_LOGICAL_OP
UNION the set-theoretic union EXPRESSION "∪" EXPRESSION
UNION_ASSIGNMENT Union the two operands and assign the result to the first. EXPRESSION "∪" ("<-"|"←") EXPRESSION
UNIT_DIVISION dimensional analysis "per" DIMENSION "/" DIMENSION
UNIT_EXPONENTIATION dimensional analysis square units, cubed units, etc DIMENSION "^" NON_FRACTIONAL
UNIT_MULTIPLICATION dimensional analysis "by" DIMENSION "*" DIMENSION
UPCASTS no doc string EXPRESSION "upcasts" EXPRESSION
USING values in the specified value are visible, and any value constructed inside the expression that is not visible from outside scopes, is destructed when the scope exits "using" "(" EXPRESSION ")" BLOCK
VECTOR_NORM create a Vector normalized to unit length "||" EXPRESSION "||"
VISIBILITY_MODIFIER no doc string ("public"|"protected"|"protected internal"|"internal"|"private")
VOLATILE_IMPLICIT_TYPE_DEREFERENCE no doc string "<" "volatile" ">"
VOLATILE_TYPE_DEREFERENCE no doc string "<" "volatile" EXPRESSION ">"
WHOLE_NUMBER no doc string {"0"} (NON_ZERO_DECIMAL_DIGIT) {decimal_digit}
WRITE_LOCK no doc string "write_lock" PARENTHETICAL EXPRESSION
WS consumes whitespaces between other tokens white_space {white_space}
XML_DOC_STRING documentation string bounded by arbirtrarily-sized delimiters "```" (XML_DOC_STRING_INTERIOR) "```"
XML_DOC_STRING_INTERIOR no doc string PAYLOAD | ("`" (XML_DOC_STRING_INTERIOR) "`")
XOR no doc string EXPRESSION ("⊕" |"xor") EXPRESSION
XOR_ASSIGNMENT Xor the two operands and assign the result to the first. EXPRESSION ("⊕" |"xor") ("<-"|"←") EXPRESSION

This website does not use cookies or javascript, excluding the Google search bar and Google analytics.
copyright © Brent Lewis 2013-2018