real function(real x) y = function real(real x) { return sqrt( 1 - x * x ); }; Is it just me or does it seem odd that real and function are swapped on one side? I can kind of see this if it's for single-pass parsing, but isn't there a better way? It's not intuitive at all.