I\'d like to write function interfaces that force the user to acknowledge the semantic meaning of built-in constants. For example, I\'d like to take
void rotate(
With the simplest versions (a typedef, a class with one member attribute and inlined accessors) the compiler can make it just as fast the plain float version.
float
Also consider using some metaprogramming library like boost.units.