Some people might say it is OK to use global variables for filehandles. I think the my $IN notation is confusing for noobs, and many examples in tutorials use global variables for filehandles. One thing for sure, they won't break your program (although they could potentially lead to hard-to-find bugs if you write a complex program with different libraries or subroutines.)