Tau day <http://tauday.com/> was yesterday, and reminded me that we forgot to provide a `tau` next to `FloatingPoint`’s `pi` property. How about we write a proposal to brind this forward-thinking constant to a forward-thinking language?
Proposal: Extend `FloatingPoint` with tau
/// The mathematical constant tau = 6.28318...
///
/// Extensible floating-point types might provide additional APIs to obtain
/// this value to caller-specified precision.
static var tau: Self { get }
I would argue the reverse, i.e., removing pi as a property of
FloatingPoint. What is it there vs. being part of a separate mathematic
constants package? I don't see Euler's number or phi (golden ratio) in the
proposal.
Joe
···
On Wed, Jun 29, 2016 at 2:45 AM, David Hart via swift-evolution < swift-evolution@swift.org> wrote:
Hello community,
Tau day <http://tauday.com> was yesterday, and reminded me that we forgot
to provide a `tau` next to `FloatingPoint`’s `pi` property. How about we
write a proposal to brind this forward-thinking constant to a
forward-thinking language?
*Proposal: Extend `FloatingPoint` with tau*
/// The mathematical constant tau = 6.28318...
///
/// Extensible floating-point types might provide additional APIs to
obtain
/// this value to caller-specified precision.
static var tau: Self { get }
The consensus was that pi deserved special treatment, as it is used in general-purpose code an order of magnitude more often than the all other constants combined. I don’t think that anyone argued against it’s inclusion.
– Steve
···
On Jun 30, 2016, at 9:12 AM, Joseph Bell via swift-evolution <swift-evolution@swift.org> wrote:
I would argue the reverse, i.e., removing pi as a property of FloatingPoint. What is it there vs. being part of a separate mathematic constants package? I don't see Euler's number or phi (golden ratio) in the proposal.
Joe
On Wed, Jun 29, 2016 at 2:45 AM, David Hart via swift-evolution <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote:
Hello community,
Tau day <http://tauday.com/> was yesterday, and reminded me that we forgot to provide a `tau` next to `FloatingPoint`’s `pi` property. How about we write a proposal to brind this forward-thinking constant to a forward-thinking language?
Proposal: Extend `FloatingPoint` with tau
/// The mathematical constant tau = 6.28318...
///
/// Extensible floating-point types might provide additional APIs to obtain
/// this value to caller-specified precision.
static var tau: Self { get }
'2 * x' is a precise operation (assuming it doesn't overflow the exponent), so '2 * .pi' will always be as accurate as '.pi' itself.
-Joe
···
On Jun 30, 2016, at 9:01 AM, David Waite via swift-evolution <swift-evolution@swift.org> wrote:
On Jun 30, 2016, at 9:22 AM, Stephen Canon via swift-evolution <swift-evolution@swift.org> wrote:
This was discussed as part of SE-0067.
The consensus was that pi deserved special treatment, as it is used in general-purpose code an order of magnitude more often than the all other constants combined. I don’t think that anyone argued against it’s inclusion.
To me, it also makes sense to offer a common transcendental constant with the highest precision available to a particular floating point type.
To me, it also makes sense to offer a common transcendental constant with the highest precision available to a particular floating point type.
-DW
···
On Jun 30, 2016, at 9:22 AM, Stephen Canon via swift-evolution <swift-evolution@swift.org> wrote:
This was discussed as part of SE-0067.
The consensus was that pi deserved special treatment, as it is used in general-purpose code an order of magnitude more often than the all other constants combined. I don’t think that anyone argued against it’s inclusion.