Joins are a little more expensive;
If the number of elements in @out (num lines * num items per line) is in the millions, using $" is noticeably faster. If the expected size of the output will not be this huge, however, using join is much cleaner, as you pointed out.