Почему
print "$str is " , ispalindrome($str) ? "" : " not" , " a palindrome\n"
печатает" мадам - палиндром ", а
print "$str is " . ispalindrome($str) ? "" : " not" . " a palindrome\n"
печатает" "?