Generate nested for loops using metaprogramming?

Half a year later I did it lol.

function permutations(array,n)
    exp = quote
        l = []
        @nloops $n i _ -> 1:length($array) begin
            idx =[@ntuple($n,i)...]
            push!(l,$array[idx])
        end
        l
    end
    eval(exp)
end
2 Likes