Seq is already in use/consumed (nested gather / take )
The problem seems to be in your take gather
construct. It puts (still open) Seq
s inside your big outer Seq
. I "fixed" your code by substituting take gather
by take my @x = gather
and everything worked as you wish, I think.
Total rewrite
There are three plausible scenarios.
In all of them, take eager gather
is the solution instead of take gather
.
This leaves the outermost gather
.
You can leave it as is. This means if you bound the result of the chunks
call to a variable, and then did two iterating operations on it, you'd get the Seq is already in use/consumed
error.
Or you can deal with that problem. You have two options, depending on whether you prefer the chunks
operation to be eager or lazy. If you want it to be eager, then write the outer gather
as eager gather
. If you want it to be lazy, write it as cache gather
.