I'm a java programmer who recently had to pick up Perl. The part I found hardest to get used to were all the special built in variables like $_ $~ $' and so on. Until you get used to them it's hard to keep track of which one does what.
And, of course, the use of regular expressions.
For example, I have to maintain code and when I saw the line below for the first time it was a little confusing. As a java programmer it looks like gibberish.
next unless "$_" !~ /^#/;