While I agree with your observations about the odities of -M, -A, and -C, print FH @list makes perfect sense to me. If one was to put a comma between the two, I would expect the filehandle and list to be printed (ie. the glob and the list); especially with the possibility of Filehandles now being assigned to variables ( open my $fh => ''
), I'd find it counterintuitive to see perl differentiate between:
# ref($fh) = GLOB
That'd be some cooky DWIMery, considering, then, that _if_ we wanted to print something like GLOB<0x...>, we'd have to do this: print "$fh",@list
, which would function in a significantly different manner than print $fh,@list
. Thus, to me it's a perfectly rational and well thought out syntax.
I still prefer, however, $fh->print();
. In addition, the workaround to this oddity would be to force the explicit declaring of the filehandle to write to, or the like.