I've included the output of "git diff HEAD". As well, the source code
in non-patch format can be found in this github repo:
http://github.com/ekiru/rakudo/tree/argfiles

I know there has already been a submission, but I had already gotten a
significant part of this implemented when I saw it, and it didn't have
support for actually initializing the $*ARGFILES contextual. I also
went ahead and implemented some IO methods that weren't mentioned in
Moritz's original post(.ins for example). I also modified lines() to
use $*ARGFILES as the default IO object according to the spec. I've
given it a little testing, but I can't guarantee there are no bugs,
and I know that it will behave weirdly if not everything in @*ARGS is
a filename or "-". Similarly to Perl 5's magic <>, it mutates and
refers to @*ARGS(which means that if there are non-filename arguments
but you remove them before you try to read from them in $*ARGFILES, no
problems will ensue).

I was uncertain about when exactly to initialize $*ARGFILES, since it
isn't mentioned in the spec. I decided to insert the initialization
immediately after @*ARGS is initialized. It should be safely movable
to any point when the setting and @*ARGS are available, though.

-- 
Tyler Curtis

Attachment: argfiles.patch
Description: Binary data

Reply via email to