Perl - это контекстный язык. Он не выполняет свою работу в соответствии с данными, которые вы ему предоставляете. Вместо этого он выясняет, как обрабатывать данные на основе используемых вами операторов и контекста, в котором вы их используете. Если вы делаете что-то вроде чисел, вы получаете числа:
# numeric addition with strings:
my $sum = '5.45' + '0.01'; # 5.46
Если вы делаете что-то вроде строк, вы получаете строки:
# string replication with numbers:
my $string = ( 45/2 ) x 4; # "22.522.522.522.5"
Perl в основном понимает, что делать, и это в основном правильно. Другой способ сказать то же самое - Perl больше заботится о глаголах, чем о существительных.
Вы пытаетесь что-то сделать, и это не работает?