print (a..c) # this prints: abc
print ($a = "abc") # this prints: abc
print ($a = a..c); # this prints: 1E0
Я бы подумал, что он будет печатать: abc
use strict;
print ($a = "a".."c"); # this prints 1E0
Почему? Это просто мой компьютер? edit: У меня есть частичный ответ (оператор диапазона.. возвращает логическое значение в скалярном контексте - спасибо), но я не понимаю: почему: print ($ a = "a"... "c" ) производит 1 вместо 0 почему: print ($ a = "a".. "c" ) производит 1E0 вместо 1 или 0