Actually, you don't need the <variant>. You can use vector, vector<>, or vector<variant>; they're all the same.
But I can see how functions, technically using no types, could be easier for the GM crowd to understand. Even if they're far too verbose for the rest of us.
I will keep that in mind, though, plague.