Parser Reference
About 2 minparser
Parser Reference
This section is a glossary of Murex tokens and parser behavior.
Other Reference Material
Language Guides
Language Tour, which is an introduction into the Murex language.
Rosetta Stone, which is a reference table comparing Bash syntax to Murex's.
Builtins, for docs on the core builtins.
Murex's Source Code
The parser is located Murex's source under the lang/
path of the project files.
Pages
- Array (
@
) Token: Expand values as an array - Tilde (
~
) Token: Home directory path variable !
(not): Reads the STDIN and exit number from previous process and not's it's condition"Double Quote"
: Initiates or terminates a string (variables expanded)$Variable
: Expand values as a scalar%(Brace Quote)
: Initiates or terminates a string (variables expanded)%[]
Create Array: Quickly generate arrays%{}
Create Map: Quickly generate objects and maps&&
And Logical Operator: Continues next operation if previous operation passes'Single Quote'
: Initiates or terminates a string (variables not expanded)(brace quote)
: Write a string to the STDOUT without new line (deprecated)*=
Multiply By Operator: Multiplies a variable by the right hand value (expression)*
Multiplication Operator: Multiplies one numeric value with another (expression)+=
Add With Operator: Adds the right hand value to a variable (expression)+
Addition Operator: Adds two numeric values together (expression)-=
Subtract By Operator: Subtracts a variable by the right hand value (expression)->
Arrow Pipe: Pipes STDOUT from the left hand command to STDIN of the right hand command-
Subtraction Operator: Subtracts one numeric value from another (expression)/=
Divide By Operator: Divides a variable by the right hand value (expression)/
Division Operator: Divides one numeric value from another (expression)<read-named-pipe>
: Reads from a Murex named pipe=>
Generic Pipe: Pipes a reformatted STDOUT stream from the left hand command to STDIN of the right hand command=
(arithmetic evaluation): Evaluate a mathematical function (deprecated)>>
Append File: Writes STDIN to disk - appending contents if file already exists>>
Append Pipe: Redirects STDOUT to a file and append its contents?:
Elvis Operator: Returns the right operand if the left operand is falsy (expression)??
Null Coalescing Operator: Returns the right operand if the left operand is empty / undefined (expression)?
STDERR Pipe: Pipes STDERR from the left hand command to STDIN of the right hand command (DEPRECATED)[ ..Range ]
: Outputs a ranged subset of data from STDIN[ Index ]
: Outputs an element from an array, map or table[[ Element ]]
: Outputs an element from a nested structure[{ Lambda }]
: Iterate through structured data{ Curly Brace }
: Initiates or terminates a code block|>
Truncate File: Writes STDIN to disk - overwriting contents if file already exists|
POSIX Pipe: Pipes STDOUT from the left hand command to STDIN of the right hand command||
Or Logical Operator: Continues next operation only if previous operation fails