@erikenglund
Will you please stop spamming with the damn same example again and again? There
are libraries with both float32 and float64 as their default and the opposite
literal can break it in both cases. Both make it binary incompatible and while
float64-instead-of-float32 additionally lowers speed,
float32-instead-of-float64 can break not only precision but also stability,
which makes any computations of any speed futile.
While Araq's solution is nice, I prefer using explicit types which can be
changed easily:
type VecFloat = float32 # sometimes even distinct float32
type Vector3d = object
x*,y*,z*: VecFloat
const sth = 3.00.VecFloat