Программа на перле сейчас начинается с простыни подгрузки модулей, причём их уже дессятки!!! (мы все умрём!!!). Возникает вопрос что делать. Ответ — использовать один из нескольких модулей, делающих всё водной строке. Остановимся на самом, наверно, навороченнном — perl5i.
perl5i — практически неизвестный модуль (если вообще модуль), переделывающий перл в новый язык. Чем-то он напоминает по характеру Underline.js , но опирается на мощь самого перла, и опирается на множество уже существующих модулей — улучшателей, таких как Modern::Perl, DateTime, Try::Tiny и так далее.
Другие Модули — улучшатели
Кроме того, Perl5i включает множество вроде бы не очень нужных вещей, типа
$string->trim();
"12.34"->is_number;
"Foo/Bar.pm"->path2module; # "Foo::Bar"
"Foo::Bar"->module2path; # "Foo/Bar.pm"
Несколько цитат из FAQ:
How do I get information about the current date?
localtime(), gmtime() and time() all return DateTime objects in scalar context.
No more mucking around with $year += 1900. It’s simply:
my $now = localtime;
my $year = $now->year;
Or even:
my $year = localtime->year;
The name of the current month can be gotten with:
my $month_name = localtime->month_name;
You have the full range of DateTime features available.
Subroutine and Method Signatures
perl5i makes it easier to declare what parameters a subroutine takes.
func hello($place) {
say "Hello, $place!\n";
}
method get($key) {
return $self->{$key};
}
method new($class: %args) {
return bless \%args, $class;
}
Leave a Reply
You must be logged in to post a comment.