Fredrik Noring scripsit: > 25 maj 2014 kl. 23:38 skrev John Cowan <[email protected]>: > > > It extends to Gaussian integers (complex numbers whose real and > > imaginary parts are both integers), but there is no support for > > those in Scheme except as a subset of the general complex numbers. > > OK, well, I thought exactness didn't matter given that R7RS explicitly > provides "(lcm 32.0 -36) ==> 288.0" as an "inexact" example.
Correct. `gcd` and those like it are applicable to both exact and inexact integers, but not to non-integers exact or inexact, and in Scheme (as in mathematics generally) the integers are a subset of the reals. > So "32" and "32.0" are both fine, but "0.0+32.0i" is not (even > though it is computable) because the "exact" version "0+32i" is not > supported? (Odd, in my opinion.) I don't understand this sentence. It's true that 32 and 32.0 are both fine and that 0.0+32.0i and 0+32i are not (though they may be provided as an implementation-specific extension). However, the failure to support inexact Gaussian integers is not a *consequence* of the failure to support exact ones; they are both equally barred because they are not integers. > > Writing a SRFI for Gaussian integers would be a Good Thing. > > How would that work, would you be able to elaborate? It would be a library of procedures applicable to Gaussian integers specifically, where the standard procedures can't handle them, or produce the wrong results, or do not yet exist. Not being a mathematician, I can't say what procedures should be provided. -- John Cowan http://www.ccil.org/~cowan [email protected] How comes city and country to be filled with drones and rogues, our highways with hackers, and all places with sloth and wickedness? --W. Blith, Eng. Improver Improved, 1652 _______________________________________________ Scheme-reports mailing list [email protected] http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports
