Chapter 20. Advanced Topics
In such a short book I don’t have enough pages to show you everything that you can do. This chapter is a brief survey of some of the features I would have liked to explain in more detail. You now know these exist and you can investigate them further on your own.
One-Liners
You can run perl6 one-liners. These are programs that you compose completely on the command
line. The -e switch takes an argument that is the program:
% perl6 -e 'put "Hello Perl 6"'
Hello Perl 6The -n switch runs the program once for each line of input. The current
line is in $_. This one uppercases and
outputs the line:
% perl6 -n -e '.uc.put' *.podYou can load a module with -M:
% perl6 -MMath::Constants -e 'put α'
0.0072973525664Declarator Block Comments
The parser doesn’t discard all comments. It remembers special comments and attaches them to
the subroutine. #| comments attach
themselves to the subroutine after them and #= comments attach themselves to the subroutine
before them. These comments are available through the .WHY
meta-method:
#| Hamadryas is a sort of butterfly
class Hamadryas {
#| Flap makes the butterfly go
method flap () {
}
}
Hamadryas.WHY.put;
Hamadryas.^find_method('flap').WHY.put;The output is the combination of all the comments attached to that subroutine:
Hamadryas is a sort of butterfly Flap makes the butterfly go
This is the sort of thing that’s handy in an integrated development environment to grab a description of the thing you are trying to use. It’s also useful ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access