Почему в Perl не работает функция state без указания версии?

Как указано в документации функция state появилась в версии 5.10 и необходимо в код добавить директиву use v5.10; или выше.

В данный момент на устройстве версия 5.24.0, без указания этой директивы интерпретатор ругается.
Могу написать use v5.24.0; и тогда код заработает.

Почему я не могу использовать state без указания версии?
  • Вопрос задан
  • 184 просмотра
Решения вопроса 1
targumon
@targumon
Это сделано для обратной совместимости со старыми версиями.
Вместо указания версии можно использовать прагму feature: use feature qw{ state };
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
RTFM
state is available only if the state feature is enabled or if it is prefixed with CORE:: . The state feature is enabled automatically with a use v5.10 (or higher) declaration in the current scope.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы