I can't speak for anything other than PHP and JavaScript (I know, I know... extremely ugly languages), but they both use the same symbol to represent what we know in Perl as scalars, lists, and hashes.
I also could add that this allows for extremely messy and poor practices in code. I've seen this many times:
<?php
$foo = 'bar';
$foo['bar'] = 'ding';
?>
I'm
assuming (as I've never looked at the PHP source code) that there are actually two separate variables here, one an array and one a scalar. But then, what happens when you try to do "if ($foo)"?
Naming two variables the same, @foo and $foo, isn't the best practice in Perl, but at least it's possible ;) .