[Haskell-cafe] ANN: exact-pi 0.1
Douglas McClean
douglas.mcclean at gmail.com
Fri Apr 10 00:04:16 UTC 2015
You could definitely use the same approach for any one irrational number
you were interested in. With a tuple of integers you could track a handful
of irrationals. If you need more than that you would probably be better
served by something like the cyclotomic package.
The reason it is hard-coded to pi is twofold. First, that's the one I need
to track, because it appears in conversion factors between units of angle.
Second, because pi appears in the Floating instance, which makes it
notationally more convenient to have the type specialized for pi.
If you have a use case for the extra generality, I could see an approach
where its parametrized by a Symbol. It would still be convenient to have
the Floating instance specialized for the type that tracks pi, but that
would be achievable.
On Thu, Apr 9, 2015 at 7:50 PM, Andrew Gibiansky <andrew.gibiansky at gmail.com
> wrote:
> Why is this hard-coded to pi? Is there a particular reason it cannot be
> used for any irrational number?
>
> On Thu, Apr 9, 2015 at 12:36 PM, Douglas McClean <
> douglas.mcclean at gmail.com> wrote:
>
>> I'm announcing the release of the new exact-pi package.
>>
>> It provides a type that exactly represents all rational multiples of
>> integer powers of pi. Because it's closed under multiplication and taking
>> of reciprocals, it's useful for computing exact conversion factors between
>> physical units. In order to provide full Num and Floating instances there
>> is also a representation for approximate values.
>>
>> I'm not sure if this will be of use to anyone else, but it is nice and
>> self-contained so I thought I would put it out there.
>>
>> -Doug McClean
>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>>
>>
>
--
J. Douglas McClean
(781) 561-5540 (cell)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150409/cdb1b737/attachment.html>
More information about the Haskell-Cafe
mailing list