in reply to Testing <> for undefined
You don't want to test the diamond operator, you want to test whether any command line arguments were supplied:
if ( @ARGV == 0 ) { print "Something useful\n"; } [download]
/J\