We are definitely adding table functions in the future, but for now the best bet is some form of loop iterator.
One big benefit of looping in Do-more is the yielding mechanism: all looping instructions test the execution time at the bottom of the loop, and if it exceeds the specified time slice for that task or program block, it suspends the operation and picks up next scan. If the time slice value for a task or program block is 65535 (the max), it does not do the yield test. By default, only $Main's slice is 65535 (it can be changed) and all others will yield. So with that in mind, the preferred way to do a search is to put the search code into a dedicated task, and one-shot enable the task any time you need to do the search.
If your table is always small, it's no big deal to put it inline and not do the task thing...however...loops can hit scan time pretty hard, and do so much quicker than you expect.
Sorry for the inconvenience. We understand the importance of table functions and had hoped to get them into our next release, but the new hardware under development has been a monumental effort for us and forced certain features further into the future.