> On 20 Oct 2019, at 23:38, Joseph Brenner <doom...@gmail.com> wrote:
> I was just thinking about the case of processing a large file in
> chunks of an arbitrary size (where "lines" or "words" don't really
> work).   I can think of a few approaches that would seem kind-of
> rakuish, but don't seem to be built-in anywhere... something like a
> variant of "slurp" with an argument to specify how much you want to
> slurp at a time, that'll move on to the next chunk the next time it's
> invoked...
> 
> Is there anything like that kicking around that I've missed?

Remember that lines and words are lazy, so do you really need to process in 
chunks?

If you do, you can build the chunks easily with X lines, you could do:

    for "filename".IO.lines(:!chomp).batch(3) -> @batch {
        say .join;
    }

Similarly for words, of course.  Note the use of :!chomp to keep the newlines.  
If you don't want them, just don't specify it: removing newlines is the default.

Reply via email to