in reply to Re^2: Open Function Question
in thread Open Function Question

I think you are getting more confused. You don't "open" a heredoc. $$i will contain the string "abc\n", so open will attempt to open a file with that name. A newline may or may not be a valid character for a file name, so you may or may not be able to even create a file with such a name to read from. Once you put quotes around a variable, it stringifies it, so the value returned from the quote operator is no longer a reference, it's a string, which is why $i didn't work as you expected either.