2011-09-25 - Updated to clojure 1.3QR for this page
The clojure library has been upgraded to the newly released version 1.3. Among others, 1.3.x brings faster and cleaner math with numerical primitives, and the ability to define functions that specify a primitive return type such as float or int. For all new math features see the Numerics documentation for clojure 1.3.
The practical consequences of the above is that, finally, abstract mathematical functions can be written which, with the aid of a macro, can be made fully specific for a numerical primitive of choice such as byte, short, int, long, float or double, without any boxing/unboxing issues that could potentially degrade performance.