It's been tried, over and over. It doesn't work simply because GA representations are larger.
There's a reason that after decades GA hasn't replaced quaternions, and it's not because people don't know how to optimize code by hand.
There's a reason that after decades GA hasn't replaced quaternions, and it's not because people don't know how to optimize code by hand.
My impression is that if you want something compact that you'll need to either give up on performance (type erasure) or separate compilation (track every type).
GA is great for pen and paper proofs though.