Я отлаживаю Perl-скрипт, который выглядит следующим образом (упрощенно):
#!/usr/bin/perl
use strict;
use warnings;
use Evil::Module;
printf "%.3f\n", 0.1;
Этот скрипт выводит 0,100
(примечание ,
вместо .
). Если я закомментирую оператор use Evil::Module
, результат будет 0.100
.
Я считаю, что это связано с настройкой локали в модуле. Но locale - это лексическая прагма (согласно man-странице), и она не используется в скрипте. Что здесь происходит?