[swift-evolution] Proposal: A standard library Fraction type
Davide De Franceschi
defrenz98 at hotmail.com
Mon Dec 7 04:44:25 CST 2015
While I agree that a Rational type, one that would preserve quotient and denominator info, would be very nice, I think that it's more fit for a Math framework.
If we're just talking about a type that holds precise decimal info, I think making NSDecimal (planned to be renamed as Decimal in the future) usable is what we should do.
> On 7 Dec 2015, at 10:28, T.J. Usiyan via swift-evolution <swift-evolution at swift.org> wrote:
>
> I'm all for a stdlib Rational Type. I've written one as well and would be glad not to have to include it as a dependency everywhere.
> TJ
>
> On Mon, Dec 7, 2015 at 1:31 PM, Harlan Haskins via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
> If Swift 3 is going to focus on re-thinking the Numerics in the system, it might be worth considering adding a Fraction (or Rational) type to the standard library. This, coupled with an arbitrary-precision integer type, would be a great way to handle arbitrary-precision decimal arithmetic, and can alleviate almost all the pain points of floating-point math.
>
> There exist now some really nice implementations of Fractions, but the ones I’ve seen haven’t been implemented fully generically.
> My favorite is this one: https://gist.github.com/JadenGeller/5e80ebf32442acc62e8e <https://gist.github.com/JadenGeller/5e80ebf32442acc62e8e>
>
> I’d love to see some standard library support with rock-solid, fast implementations of all the common algorithms (GCD, LCD, LCM, reduction, etc) and good conformance to the builtin integer protocols. Maybe even FloatLiteralConvertible, too, with some logic for converting rational floats.
>
> Thoughts?
>
> - Harlan Haskins
>
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
> https://lists.swift.org/mailman/listinfo/swift-evolution <https://lists.swift.org/mailman/listinfo/swift-evolution>
>
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20151207/36614fbd/attachment.html>
More information about the swift-evolution
mailing list