My point is that two variables that
eq sees as containing the same value, create two different files just because of its internal representation.
The representation used by perl internally, should not affect external interactions.
Update: BTW, note that in my sample repl above I have used utf8::upgrade which just changes the representation. Quoting utf8:
Converts in-place the internal representation of the string from an octet sequence in the native encoding (Latin-1 or EBCDIC) to UTF-8.The logical character sequence itself is unchanged.