Fix comparision of floating point infinities and NaNs with ratios/bignums
Fixes a bug where statements such as
(= 1/2 ext:double-float-positive-infinity)
throw an arithmetic-error, when they should just silently return nil.
Also fixes the sign of the infinite floating point returned by e.g.:
(expt 0.0 -1.0)
(this unrelated change is in my opinion too small to justify an extra merge request for)
Edited by username-removed-1342825