The assumption of only supporting `Float64` is too strong. Are there any good reasons? I am labelling this as bugs to signal its priority.