+1; this is great! I have nothing but good things to say about the proposal itself.
I have two smaller questions, however; I apologize if they are off-topic. One is if there’s any ETA or similar for a glimpse at the “complete picture” of Swift’s revised numeric protocols; these floating-point protocols look really, really good, but this is also (I think) the first glimpse at the new `Arithmetic` protocol, and there’s also a new “Integer” protocol coming…and it’d be nice to get a sense of the complete vision here. My other question is potentially subsumed by the above, but I want to raise it now: it’d be great if there was some standardized protocol/vocabulary to use when converting between various numeric representations that was: - easy for custom numeric types to *adopt* correctly (e.g. if one were to write a fixed-point type, or a rational type, etc.) - easy for non-experts to *use* correctly for non-expert purposes …since such conversions from one representation to another are at least IMHO a dangerous area; if you know what you’re doing it’s not dangerous, but e.g. even if someone is only trying to go from Double -> Int: - they probably aren’t an expert, doing expert numerical things - they may not have a solid understanding of floating point (NaN, infinities, etc.) - they thus may not know they may *need* to be careful here - they may not know *how* to be careful, even if they know they *should* be - they may not be able to be careful *correctly*, even if they attempt it …and so it’d again be great if the revised numeric protocols allow as broad a range of such conversions as possible to be handled by generic code in the standard library. It certainly looks like `FloatingPoint` protocol itself provides enough information to allow an expert to write generic version of most floating point -> integer conversion variants I can think of, but I’m not an expert…but it’d be great if e.g. there was some simpler protocol other custom numeric types could adopt to take advantage of expert-written generic conversions to other numeric types. I can provide examples if this is unclear, and if it’s off-topic it can wait for another time. This `FloatingPoint` revision itself looks really really good! > On Apr 14, 2016, at 6:55 PM, Stephen Canon via swift-evolution > <[email protected]> wrote: > > Enhanced floating-point protocols >
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
