Not quite true. I will
not recommend the use of
[ $a => $b ]->[ $b <= $a ]
as it relies on too much syntax magic.
The first set of brackets
[ ] is used to indicate an anonymous array, whereas the second set of brackets
->[ ] de-references the array.
=> is used as a fat comma (not greater-than-or-equal-to), whereas
<= is used as less-than-or-equal-to.
Hence,
[ $a => $b ]->[ $b <= $a ]
is same as
[ $a, $b ]->[ ($b <= $a) ]
which either evaluates to
[ $a, $b ]->[0] # returning $a
or
[ $a, $b ]->[1] # returning $b