in reply to Re^3: Ordering of parameters - Re^9: Converting Unicode
in thread Converting Unicode

All is global in the computer's RAM!!!!! ;)

A global variable is bad style not because it is just there but because you don't know who uses it. So, trivial example, if you change its name you rely on Perl's strictness to tell you who from those using it still use the old name which is now undefined and you need to fix it.

$config in the line that confused you is only global in the computer RAM and in its limited scope when it was created from a file. ***I CHOOSE WHO SEES/ACCESSES THAT $config*** by passing it's reference (which is an address to the computer RAM which does not need to concern you at all) explicitly to them (subs). That's hugely different than declaring it global and any sub deciding to access it. Many times I revisit my code and can't remember a thing. Worst things happen when others work on your code. So, difficult to keep track where all the globals are used across my code. So, it is not political correctness. @^$^@* political correctness AFAIC. It is a way to deal with complexity. And a good one too.

Anyway, I feel that I may confuse you, so I will not insist on this subject unless you ask.