Я предпочитаю буквальный стиль программирования с комментариями POD рядом с кодом, который они документируют. К сожалению, это раздувает код, который не очень Perlish ;-) Лучший способ, который я смог найти, это использовать Dist::Zilla с Pod::Weaver как это:
package Foo;
#ABSTRACT: Foobar helper module for Foos
=method foo ( $bar, $doz )
Lorem ipsum hopladi and hoplada.
=cut
sub foo {
...
}
Можно было бы поспорить об удалении пустых строк, но это также снижает читабельность. Нет ли способа написать более лаконично, без повторяющегося и ненужного синтаксиса, например:
package Foo;
#ABSTRACT: Foobar helper module for Foos
#METHOD: Lorem ipsum hopladi and hoplada.
sub foo { # $bar, $doz
...
}
И разверните это до полного POD:
=head1 NAME
Foo - Foobar helper module for Foos
=head1 METHODS
=head2 foo ( $bar, $doz )
Lorem ipsum hopladi and hoplada.
Я думаю, что это должно быть, возможно, с плагином Pod:: Weaver, но попытка понять архитектуру Pod:: Weaver в сочетании с Dist:: Zilla и PPI причинила мне боль :-(