*finally* getting around to answering these... ;-)
Jon Ericson wrote:
>
> This is not strictly true. <> is shorthand for <ARGV>. ARGV is the
> special filehandle that opens each file in @ARGV. If @ARGV is empty,
> $ARGV[0] is set to '-'.
Thanks for the clarification.
> @ARGV = ('filename');
> # code passes
> @data = <>;
The problem here - which I didn't explicitly mention in the RFC but
should have - is if you have valid stuff in @ARGV *and* want to change
the default <> input. This is not possible currently.
> $yes_or_no = <STDIN>; # read from STDIN
> @data = <>; # read from ARGV
Good point; again the difference would be that instead of <> assuming
ARGV, it would assume $DEFIN. Now, if you didn't reset $DEFIN, it would
point to opening the file $ARGV[0], meaning the behavior would be the
same as currently. However, if you did changed $DEFIN then all input
functions would be affected and you could have a lot of cool stuff.
Anyways, all this probably needs to be clarified considerably to show
the real gains, so I'll do that for v2.
-Nate