Oh my, oh my.. I beg for a pardon, but would you please consider first answering this question:
WHY do you need to use the typeglob and what good does it do in your particular example!? Remove the useless '*$' parameter that you are passing to a bunch of 'foo#' subroutines and the code should still print out the same exact stuff! To begin with, you don't even make any use of the passed parameter inside neither of your subroutines.
If you are attemping to play with typeglobs just because they appear to be a 'cool' thing to play with, please steer away from them. Otherwise, err... I'd like to see a piece of code of yours which indeed does make a good use of them.
Update: aseidas, happy to see that you took my question seriously and were not repulsed by it's apparent 'coldness' ;).
With regard to typeglobs, they are not entirely a bad thing. Sorry if that is how it came through from my initial reply. However, they could be easily abused, especially at the hands of an inexperienced or a novice or plain ignorant (not you, however :) perl programmer.
In responce to your point #3, I should point out that passing variables to a subroutine in Perl is rather trivial. I would suggest you read some introduction books on Perl programming to get the idea. Also, one of the replies to your initial posts includes a good & simple example for you to look at.
Cheers ;-)
_____________________
# Under Construction