http://www.perlmonks.org?node_id=373962

valentin has asked for the wisdom of the Perl Monks concerning the following question:

Hi, my question is two folded:
1. What is the difference between ${$x."::VERSION"} and ${"$x::VERSION"}?
2. Why is $y undefined in the first example?
3. Why does perl think $y is a filehandle in the second example?
perl -MFile::Find -we '$x='File::Find'; print ${ $y = "$x::VERSION" } +print $y'
perl -MFile::Find -we '$x='File::Find'; print ${ $y = $x."::VERSION" } + print $y'