Slashdot has a book review on "Metaprogramming GPUs with Sh" by Michael McCool. Sh is one of the shading languages available for GPU programming, which was developed at the University of Waterloo. Rather than definining its own language, Sh uses regular C++ syntax to describe shader code, which is then dynamically (at runtime) compiled to a specific backend, such as a GPU or possibly even the CPU. It utilizes C++ operator overloading and defines special tuple and matrix types to make it possible.