Про XXX

| Комментариев: 2

На спане есть модуль Инги дёт Нета (Брайана Ингерсона) под названием XXX, предназначенный для — ха! — для отладки.

Модуль экспортирует несколько функций WWW, XXX, YYY и ZZZ, которые печатают дамп того, что находится справа. То есть достаточно вписать в нужное место XXX, и выполнение программы прекратится отладочным сообщением:

use v5.12;
use XXX;

XXX my @digits = 'a'..'f';

--- a
--- b
--- c
--- d
--- e
--- f
...
  at 1.pl line 4

По умолчанию дамп делается в формате YAML, но это возможно переопределить, например:

use v5.12;
use XXX -with => 'Data::Dumper';

XXX my $person = {sex => 'male', age => 30};

$VAR1 = {
  'age' => 30,
  'sex' => 'male'
};

  at 2.pl line 4

Вызов XXX приводит к завершению программы (die), а WWW печатает предупреждение (warn).

Несмотря на то, что все равно приходится явно подключать модуль (use XXX), подход очень интересный: написать в начале (или любой другой части — функция возвращает все свои аргументы) строки три буквы (хотя еще удобнее было бы, если бы названия функция были в нижнем регистре) намного проще и быстрее, чем, например, say Data::Dumper($var).

Комментариев: 2

use Data::Dump "pp";
print pp($var);

тоже не длинно)

А у меня для perl файлов vim настроен так, что DD превращается в use Data::Dumper;, а PD - в print Dumper.

Комментировать

Страницы

  • img

Об этой записи

Сообщение опубликовано 10.06.2010 20:41. Автор — ash.

Предыдущая запись — Universe::Galaxy и Acme::Test::42

Следующая запись — Хакмит на Perl Mova + YAPC::Russia

Смотрите новые записи на главной странице или загляните в архив, где есть ссылки на все сообщения.