Since you are soliciting opinions, I think your first version is an unusual usage of join. I think the most strightforward is your 3rd version (simple concatenation). And I do not think of join as being a three-argument function, as your title suggests. I think of is as two-agrument: an expression for the separator and a list.