Dataflow operators are amazing! This is beautiful and expected. As we emphasized multiple times, data need channels and spaces to flow and these operators are exactly creating the same.
$$$AlertBox type=HINT title=Optional Pipe Operator message= Using : operator in middle of a pipeline is optional. When two shells are used beside each other e.g. value literals, variables or gates, simorg considers this combination a pipeline and by default uses : operator to connect them.$$$
$$$AlertBox type=HINT title=Optional Pipe Operator message= As data is now flowing naturally in the system and inside pipelines from left to right, we no longer need operator precedence. The evaluation priority between all operators is from left to right.$$$
The following operators need an operand or object. If operand is missing a compile time error will be logged,
- All the binary arithmetics: <<<+>>>, <<<->>>, <<<*>>>, <<</>>>, <<<%>>>.
- All the relationals: <<<=>>>, <<<!>>>, $$$KeywordSnippet keyword=>$$$, $$$KeywordSnippet keyword=>=$$$, $$$KeywordSnippet keyword=<$$$, $$$KeywordSnippet keyword=<=$$$.
- Declaration <<<$>>>.
- Instantiate $$$KeywordSnippet keyword=#$$$.
- Filter <<<@>>>.
- Collector <<<..>>>.
The following operators are unary and do not need an operand or object,
- Pipe <<<:>>>.
- Truthy <<<&>>> and Not Truthy <<<!&>>>.
- Log <<<?>>> and <<<??>>>
- DoNotCare <<<|>>>.