Есть ли грамматика для обозначения «Поздние статические привязки» в Perl?
В php есть.
http://php.net/manual/en/language.oop5.late-static-bindings.php
Я просто ищу их для Perl.
В Perl нет статических методов, поэтому вам не нужны хитрости, чтобы статические методы вели себя как виртуальные методы.
package ClassA {
sub who { print __PACKAGE__, "\n" }
sub test { my ($class) = @_; $class->who(); }
}
package ClassB {
our @ISA = 'ClassA';
sub who { print __PACKAGE__, "\n" }
}
ClassA->test(); # ClassA
ClassB->test(); # ClassB
Других решений пока нет …