Hmmm...
I don't know why you think that control loop would not work - are you having a specific problem with it?
Accumulating results should be perfectly doable in APL. I have my own permutation function for APL - it's recursive and terribly simple but doesn't return results in that order. It's also not suitable for returning very large arrays.
Returning results was one of the things the article's author was trying to avoid, because they wanted to be able to work with lists larger than would fit in memory, so they did it that way on purpose.
I seem to remember an article once talking about determining the nth term of Fibonacci without going through the whole process, but it was really complicated and I'm probably not remembering the right thing anyway. Of course, the nth/mth term of a binomial expansion is trivial.
If all you want is function cross-referencing, though, I've got tools to do that, too.