[Haskell-cafe] Arbitrary precision?
Andrew Coppin
andrewcoppin at btinternet.com
Sun May 6 12:59:40 EDT 2007
>> Greetings.
>>
>> Haskell has arbitrary precision integers, in the form of the Integer
>> type. Is there a type somewhere that implements arbitrary precision
>> fractional values?
>>
>
> Yes, Rational in the Prelude (with extra functions in Ratio)
>
> Prelude> let fibs = (1::Rational) : 1 : zipWith (+) fibs (tail fibs)
> Prelude> let grs = zipWith (/) (tail fibs) fibs
> Prelude> take 10 grs
> [1%1,2%1,3%2,5%3,8%5,13%8,21%13,34%21,55%34,89%55]
> Prelude> take 10 (zipWith (-) grs (tail grs))
> [(-1)%1,1%2,(-1)%6,1%15,(-1)%40,1%104,(-1)%273,1%714,(-1)%1870,1%4895]
> Prelude>
>
Ah yes, you're right. Well, you learn something every day...
OOC, is there a reason why you can't just write "5%10"?
More information about the Haskell-Cafe
mailing list