Because this will make it easier for others to reason about the code translator: you will only need to be skilled in two programming languages: python and C++, instead of three.
My perl skill, at one time expert, is fading; and maintaining the old translate.pl is becoming more irritating.
Using clang makes the initial parsing more elegant. I had actually hoped that this would mean that there would be less translation code to write. But alas, the new translator is already more lines of code than the old translate.pl. Even so, the new parser is better compartmentalized.
Branch is here: https://github.com/cmbruns/pyopenvr/tree/cmbruns/clang_translate