September 2017
Beginner
402 pages
9h 52m
English
In the example in the previous section, we used a chained if—elsif construction. Let's take a look at this once again:
if $step eq 'up' {$y--}elsif $step eq 'down' {$y++}elsif $step eq 'right' {$x++}elsif $step eq 'left' {$x--}elsif $step eq 'take-it' {take @matrix[$y][$x]}
It is clearly seen that all the branches contain the same code, which compares the current value of the $step variable with one of the predefined values. While being simple and straightforward, this is not the most elegant way of doing such comparisons.
In some languages such as C and C++, the switch and case keywords help reorganize the if-else chain. In Perl 6, we use given and when. The preceding code can be rewritten in the following ...
Read now
Unlock full access