出遅れ感満載だが
>>415が最近やったことなんで自分のやり方
http://ideone.com/33POAz

a.xy とか a.xxx とかを括弧なしでやろうとしたのでメンバ関数の数はえらいことになるけどGLSLと同じ書き方ができる
xyとかxyzとかyzwとかは左辺値にも出来るお

あとswizzle関数は可変長テンプレートでまとめることも一応できる

無名共用体で別の名前で参照するコードが混在するのはパフォーマンス的にはよくないらしいけど