Где найти хорошие ресурсы для изучения новых возможностей Perl 5.10? - PullRequest
14 голосов
/ 03 октября 2008

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

Любые ссылки приветствуются.

-fREW

Ответы [ 6 ]

15 голосов
/ 03 октября 2008

Я нашел эту статью полезной.

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

А также Введение начинающих в Perl 5.10 .

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

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

Страница man perldelta содержит все мелкие детали. Есть краткая (но информативная) слайд-презентация, Perl 5.10 для людей, которые не совсем безумны . И хорошее обсуждение PerlMonks по этому вопросу.

13 голосов
/ 04 октября 2008

В Советы по Perl о Perl 5.10 была строка статей:

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

Всего наилучшего,

Пол

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

7 голосов
/ 04 октября 2008

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

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

5 голосов
/ 04 октября 2008

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

3 голосов
/ 04 октября 2008

См. Слайды Рикардо Сигнеса для его превосходного «Perl 5.10 Для людей, которые не являются полностью безумными».

http://www.slideshare.net/rjbs/perl-510-for-people-who-arent-totally-insane

...