Reusable idioms are an open block to your thinking. They are not the same as reusable code. '' is just as false as 0 and is often preferable -- for example, a routine returns or sets a scalar by reference originating from a unix exit code, 0 being unix success, so '' is the best value for "i had to abort earlier than that"
$a is not a global, it's a special variable for use in sort blocks, that shouldn't be abused especially by habit -- one day a sort routine will come back to bite you in the bottom. Are you trying to say that not declaring locally and instead using global variables is a virtue? Many here will disagree.