Operators, Precedence and Associativity - blancas/eisen GitHub Wiki
This page lists the Eisen operators by groups, in order of priority, from the highest to the lowest, and also indicating their associativity.
Subexpression in parenthesis
( e )
Function call
fun-name arg ...
Power of, right-to-left
** power of
Unary, right-to-left
! logical not
~ bit not
+ positive
- negative
User-defined function* as binary operator, left-to-right
.func.
Multiplicative, left-to-right
* multiplication
\\ integer division
/ ratio or division for non-integer numbers
% modulo
Additive, left-to-right
+ addition
- subtraction
Construct, right-to-left
: conj on lists, vector, sets, maps
Concatenation, left-to-right
++ concatenation of sequences
Shift, left-to-right
<< bit shift left
>> bit shift right
Bitwise AND, left-to-right
& and
Bitwise XOR, left-to-right
^ xor
Bitwise OR, left-to-right
| or
Relational, left-to-right
> greater than
>= greater than or equal
< less than
<= less than or equal
Equality, left-to-right
= equals
Logical AND, left-to-right
&& and
Logical OR, left-to-right
|| or