Где хорошие ресурсы для изучения новых возможностей Perl 5.10?

Я до сих пор не понимал, что Perl 5.10 обладает значительными новыми функциями, и мне было интересно, может ли кто-нибудь дать мне хорошие ресурсы, чтобы узнать о них. Я искал их в Google, и все, что я нашел, это некоторые слайды и быстрый обзор. Некоторые из функций (по крайней мере для меня) были бы приятными, если бы у них было больше объяснений.

Любые ссылки будут оценены.

-fREW

Ответы

Ответ 1

В статье Perl Tips появилась строка статей о Perl 5.10:

Есть также мои новые версии Perl 5.10 на странице Perl Training Australia, но так как они были написаны до выхода 5.10, некоторые вещи могут немного измениться. Я считаю, что rjbs Perl 5.10 для людей, которые не являются абсолютно безумными, теперь охватывает все, к чему привыкли мои слайды.

Все самое лучшее,

Пол

Обязательное предвзятое раскрытие: я написал почти все ресурсы, упомянутые в этом сообщении,

Ответ 3

Я нашел этот article полезным.

Этот один больше ориентирован на 5.10 Расширенные регулярные выражения.

А также Введение новичков в Perl 5.10.

Наконец, этот отличный отчет о том, почему вы должны начать использовать Perl 5.10 и из которого я извлек следующее:

  • переменные состояния Нет больше переменных области видимости с внешним кудрявым блоком или непослушный мой трюк $f if 0 (последний теперь является синтаксической ошибкой).
  • defined-or No more $x = defined $y? $y: $z, вы можете вместо этого записать $x = $y//$z.
  • regexp улучшения. Большая работа, проделанная dave_the_m, для очистки внутренних компонентов, которая проложила путь для demerphq, чтобы добавить всевозможные новые интересные вещи.
  • меньшие переменные следы Николас Кларк работал над реализацией SV, AV, HV и других структур данных, чтобы уменьшить их размер до точки, которая попадает в сладкое пятно на 32-битных архитектурах.
  • меньшие постоянные подзаголовки Николас Кларк уменьшил размер постоянных субмарок (например, константа использования FOO = > 2). Результат при загрузке модуля, такого как POSIX, является значительным.
  • сложены файловые массивы, которые вы можете теперь сказать if (-e -f -x $file). Предполагалось, что Perl 6 позволит это, но они двинулись в другом направлении. Ну что ж.
  • lexical $_ позволяет вам вложить $_ (без использования локального).
  • _ прототип, вы можете теперь объявить sub с прототипом. Если вызвано без аргументов, получает питание $(позволяет вам более чисто заменить встроенные функции). Оператор
  • x в списке теперь вы можете сказать, что мой @arr = qw (xyz) x 4. (Обновление: эта функция была включена в кодовую базу 5.8 после того, как была реализована в blead, и именно поэтому Somni замечает, что она доступна в 5.8.8).
  • переключить истинный переключатель/заданную конструкцию, вдохновленную Perl 6
  • оператор smart match (~~) для перехода с коммутатором
  • Усовершенствования закрытия dave_the_m полностью обновили код обработки закрытия, чтобы исправить ряд ошибок и утечек памяти.
  • быстрее Unicode lc, uc и /i быстрее работают в строках Unicode. Усовершенствования кеша UTF-8.
  • улучшенные сортировки inplace sorts выполняются, когда это возможно, вместо использования временного. Функции сортировки можно назвать рекурсивно: вы можете отсортировать дерево
  • карта в пустотном контексте уже не зла. Только морально.
  • меньше кодов операций, используемых при создании анонимных списков и хэшей. Быстрее pussycat!
  • улучшения tainting Больше вещей, которые могут быть испорчены, помечены как таковые (например, форматы sprintf).
  • $# и $* удалены Меньше действия на расстоянии
  • perlcc и JPL удалены. Эти вещи были просто магнитами-ошибками, и никто не заботился о них.

Ответ 4

Изучение Perl, пятое издание и позднее scover 5.10. Кроме того, ресурсы, о которых говорили другие люди, включая perldelta, довольно хороши. Я написал несколько статей о некоторых функциях Эффективный Perler.

Лучший способ начать - это выбрать интересную функцию и поиграть с ней. Это, как выяснили авторы руководств. То, как вы действительно должны начинать изучать что-либо, - это любой язык.

Ответ 5

Усовершенствования регулярных выражений включают именованные захваты: Посмотрите здесь