You can do Foo2(getindex.(Foo(x), (1, 3, 2))...) and that should not lead to any overhead due to the literal tuple const folding away. If Foo is not scalar-broadcastable you can wrap it in Ref(...)
2 Likes