To change var from double to float has two other problems:
1) It would break all kinds of script code. (A big no-no.)
2) Precision loss.

Maybe better to add float support as a standalone feature? Like fseries() for float, typedef float fvar, and typedef float* fvars, where the 'f' is for "fast"?

And then write the indicator functions to have both var and fvar overloads. This simplifies scripting.