Proposal: Add a global Infinitesimal property

classic Classic list List threaded Threaded
21 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Proposal: Add a global Infinitesimal property

Abdul Shabazz
As polar opposite to Infinity, Number.POSITIVE_INFINITY, the Infinitesimal should be a smallest representable value greater than 0. Perhaps someone else could propose why this would be useful.
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

kdex
`Number.MIN_VALUE` already exists.

On Saturday, May 12, 2018 6:49:32 PM CEST Abdul Shabazz wrote:
> As polar opposite to Infinity, Number.POSITIVE_INFINITY, the Infinitesimal
> should be a smallest representable value greater than 0. Perhaps someone
> else could propose why this would be useful.
_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Abdul Shabazz
In reply to this post by Abdul Shabazz
Ok. How about Number.NEGATIVE_MIN_VALUE
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

kdex
Already available, just prepend a minus sign like so:

```js
-Number.MIN_VALUE
```

Yours would be much longer to type and brings no additional value.

On Saturday, May 12, 2018 6:54:42 PM CEST Abdul Shabazz wrote:
> Ok. How about Number.NEGATIVE_MIN_VALUE
_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

Logan Smyth
It doesn't sound like `Number.MIN_VALUE` is what you want, is it? You're asking for something like `Number.EPSILON`, but relative to `0` instead of `1`?

On Sat, May 12, 2018 at 9:57 AM, kdex <[hidden email]> wrote:
Already available, just prepend a minus sign like so:

```js
-Number.MIN_VALUE
```

Yours would be much longer to type and brings no additional value.

On Saturday, May 12, 2018 6:54:42 PM CEST Abdul Shabazz wrote:
> Ok. How about Number.NEGATIVE_MIN_VALUE
_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss



_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Abdul Shabazz
In reply to this post by Abdul Shabazz
Please compare to the inclusion of Number.POSITIVE_INFINITY, and Number.NEGATIVE_INFINITY.
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Abdul Shabazz
In reply to this post by Abdul Shabazz
If Number.EPSILON does not exist then yes we should add it. I have no problems adding synonyms.
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Jordan Harband
In reply to this post by Abdul Shabazz
If one is not sure why something would be useful, then one should not propose anything.

Do you have a use case for this, or would it address an inconsistency in the language? If so, great, please share! If not, then there's not really anything to discuss.

On Sat, May 12, 2018 at 10:02 AM, Abdul Shabazz <[hidden email]> wrote:
Please compare to the inclusion of Number.POSITIVE_INFINITY, and Number.NEGATIVE_INFINITY.
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss



_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Jordan Harband
In reply to this post by Abdul Shabazz
Number.EPSILON was added in ES2015.

The committee generally does have a problem adding synonyms; that does not add any significant value, while it does add complexity.

On Sat, May 12, 2018 at 10:05 AM, Abdul Shabazz <[hidden email]> wrote:
If Number.EPSILON does not exist then yes we should add it. I have no problems adding synonyms.
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss



_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Abdul Shabazz
In reply to this post by Abdul Shabazz
@Jordan Harband

Sorry i just dont agree; i don't create things which have meaning, i give meaning to things i create.
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Abdul Shabazz
In reply to this post by Abdul Shabazz
I wasn't aware of the committees view of synonyms and that they perceive them ad clutter. This unfortunate but i will moderate my future suggestions accordingly. btw where can i find their submission/proposal guidelines?
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

kdex
A good place to start is [1].

[1] https://github.com/tc39/proposals

On Saturday, May 12, 2018 7:11:36 PM CEST Abdul Shabazz wrote:
> I wasn't aware of the committees view of synonyms and that they perceive
> them ad clutter. This unfortunate but i will moderate my future suggestions
> accordingly. btw where can i find their submission/proposal guidelines?
_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

Jordan Harband
They're not written down anywhere, and they change based on the makeup of the committee.

However, in general, the wider committee strives to avoid complexity, and absolutely will demand a justification for adding anything to JavaScript, including for changing the *process by which changes are made* to JavaScript.

https://github.com/tc39/proposals is the list of current proposals, https://tc39.github.io/process-document/ describes the stage process, and https://github.com/tc39/ecma262/blob/master/CONTRIBUTING.md describes how one can contribute.

I strongly encourage thorough familiarization with all those documents, including the spec/language itself, if you want to increase the effectiveness of a proposal.

On Sat, May 12, 2018 at 10:12 AM, kdex <[hidden email]> wrote:
A good place to start is [1].

[1] https://github.com/tc39/proposals

On Saturday, May 12, 2018 7:11:36 PM CEST Abdul Shabazz wrote:
> I wasn't aware of the committees view of synonyms and that they perceive
> them ad clutter. This unfortunate but i will moderate my future suggestions
> accordingly. btw where can i find their submission/proposal guidelines?

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss



_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Re: Proposal: Add a global Infinitesimal property

Abdul Shabazz
In reply to this post by Abdul Shabazz
Thank you, i am already partway through the March 2018 TC39 meeting notes from day III
--
Abdul S.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

Bob Myers
In reply to this post by Jordan Harband
https://tc39.github.io/process-document/

This document says that there are no entrance criteria for Stage 0. In practice, however, when I attempted to add a proposal to the phase 0 list, via a PR to https://github.com/tc39/proposals/blob/master/stage-0-proposals.md, it was rejected based on the fact that a champion is in fact required even for stage 0, and all the proposals listed on the stage 0 page do indeed have champions listed. 

I seem to recall pointing out this inconsistency a long time ago and someone responded that the docs were out of date and would be fixed pretty soon.

Bob

On Sat, May 12, 2018 at 10:45 PM Jordan Harband <[hidden email]> wrote:
They're not written down anywhere, and they change based on the makeup of the committee.

However, in general, the wider committee strives to avoid complexity, and absolutely will demand a justification for adding anything to JavaScript, including for changing the *process by which changes are made* to JavaScript.

https://github.com/tc39/proposals is the list of current proposals, https://tc39.github.io/process-document/ describes the stage process, and https://github.com/tc39/ecma262/blob/master/CONTRIBUTING.md describes how one can contribute.

I strongly encourage thorough familiarization with all those documents, including the spec/language itself, if you want to increase the effectiveness of a proposal.

On Sat, May 12, 2018 at 10:12 AM, kdex <[hidden email]> wrote:
A good place to start is [1].

[1] https://github.com/tc39/proposals

On Saturday, May 12, 2018 7:11:36 PM CEST Abdul Shabazz wrote:
> I wasn't aware of the committees view of synonyms and that they perceive
> them ad clutter. This unfortunate but i will moderate my future suggestions
> accordingly. btw where can i find their submission/proposal guidelines?

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss


_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

Jordan Harband
The document says both "The TC39 committee must approve acceptance for each stage." (which I read as, even if there's no entrance criteria) and "Such submissions must either come from members of TC39 or from non-members who have registered via Ecma International,", for one, but in practice, inclusion into the proposals repo requires involvement (championing or otherwise) from a TC39 member.

On Sat, May 12, 2018 at 10:24 AM, Bob Myers <[hidden email]> wrote:
https://tc39.github.io/process-document/

This document says that there are no entrance criteria for Stage 0. In practice, however, when I attempted to add a proposal to the phase 0 list, via a PR to https://github.com/tc39/proposals/blob/master/stage-0-proposals.md, it was rejected based on the fact that a champion is in fact required even for stage 0, and all the proposals listed on the stage 0 page do indeed have champions listed. 

I seem to recall pointing out this inconsistency a long time ago and someone responded that the docs were out of date and would be fixed pretty soon.

Bob

On Sat, May 12, 2018 at 10:45 PM Jordan Harband <[hidden email]> wrote:
They're not written down anywhere, and they change based on the makeup of the committee.

However, in general, the wider committee strives to avoid complexity, and absolutely will demand a justification for adding anything to JavaScript, including for changing the *process by which changes are made* to JavaScript.

https://github.com/tc39/proposals is the list of current proposals, https://tc39.github.io/process-document/ describes the stage process, and https://github.com/tc39/ecma262/blob/master/CONTRIBUTING.md describes how one can contribute.

I strongly encourage thorough familiarization with all those documents, including the spec/language itself, if you want to increase the effectiveness of a proposal.

On Sat, May 12, 2018 at 10:12 AM, kdex <[hidden email]> wrote:
A good place to start is [1].

[1] https://github.com/tc39/proposals

On Saturday, May 12, 2018 7:11:36 PM CEST Abdul Shabazz wrote:
> I wasn't aware of the committees view of synonyms and that they perceive
> them ad clutter. This unfortunate but i will moderate my future suggestions
> accordingly. btw where can i find their submission/proposal guidelines?

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss


_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss


_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

Bob Myers
Thanks for your quick reply.

>  in practice, inclusion into the proposals repo requires involvement (championing or otherwise) from a TC39 member 

With all due respect, if that is the practice, then the document should reflect that practice.
FWIW, I did register as specified by that page.

The TC39 committee must approve acceptance for each stage

I see. I missed that. I'm curious, though. Since many of the stage 0 proposals have no "Last Presented" date shown, in what form and by what process was the acceptance of said stage 0 proposals approved by the TC39 committee? If in fact such proposals were never actually accepted by means of any documented procedure, someone with strong bureaucratic tendencies might insist that they be removed and re-accepted via a correct approval procedure in order to maintain conformance with TC39's own stated processes.

--
Bob

On Sat, May 12, 2018 at 11:27 PM Jordan Harband <[hidden email]> wrote:
The document says both "The TC39 committee must approve acceptance for each stage." (which I read as, even if there's no entrance criteria) and "Such submissions must either come from members of TC39 or from non-members who have registered via Ecma International,", for one, but in practice, inclusion into the proposals repo requires involvement (championing or otherwise) from a TC39 member.

On Sat, May 12, 2018 at 10:24 AM, Bob Myers <[hidden email]> wrote:
https://tc39.github.io/process-document/

This document says that there are no entrance criteria for Stage 0. In practice, however, when I attempted to add a proposal to the phase 0 list, via a PR to https://github.com/tc39/proposals/blob/master/stage-0-proposals.md, it was rejected based on the fact that a champion is in fact required even for stage 0, and all the proposals listed on the stage 0 page do indeed have champions listed. 

I seem to recall pointing out this inconsistency a long time ago and someone responded that the docs were out of date and would be fixed pretty soon.

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

Mark Miller-2
In reply to this post by Jordan Harband
See the entire thread at <https://esdiscuss.org/topic/the-tragedy-of-the-common-lisp-or-why-large-languages-explode-was-revive-let-blocks>. While this position is in no way official, several of the reactions on the thread are from other committee members, and so serves as an indication of attitudes common on the committee.



On Sat, May 12, 2018 at 10:14 AM, Jordan Harband <[hidden email]> wrote:
They're not written down anywhere, and they change based on the makeup of the committee.

However, in general, the wider committee strives to avoid complexity, and absolutely will demand a justification for adding anything to JavaScript, including for changing the *process by which changes are made* to JavaScript.

https://github.com/tc39/proposals is the list of current proposals, https://tc39.github.io/process-document/ describes the stage process, and https://github.com/tc39/ecma262/blob/master/CONTRIBUTING.md describes how one can contribute.

I strongly encourage thorough familiarization with all those documents, including the spec/language itself, if you want to increase the effectiveness of a proposal.

On Sat, May 12, 2018 at 10:12 AM, kdex <[hidden email]> wrote:
A good place to start is [1].

[1] https://github.com/tc39/proposals

On Saturday, May 12, 2018 7:11:36 PM CEST Abdul Shabazz wrote:
> I wasn't aware of the committees view of synonyms and that they perceive
> them ad clutter. This unfortunate but i will moderate my future suggestions
> accordingly. btw where can i find their submission/proposal guidelines?

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss



_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss




--
  Cheers,
  --MarkM

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

kdex
In reply to this post by Logan Smyth
@Logan:

I think the number you're describing there is exactly `Number.MIN_VALUE`,
isn't it?

The machine epsilon is the smallest value ε for which 1 + ε > 1.
If we were to consider the relative-to-zero case, we would instead look for an
ε such that 0 + ε > 0 holds. `Number.MIN_VALUE` has this property, since

```0 + Number.MIN_VALUE === Number.MIN_VALUE```

and there are no positive values smaller than `Number.MIN_VALUE`.

On Saturday, May 12, 2018 7:01:38 PM CEST Logan Smyth wrote:

> It doesn't sound like `Number.MIN_VALUE` is what you want, is it? You're
> asking for something like `Number.EPSILON`, but relative to `0` instead of
> `1`?
>
> On Sat, May 12, 2018 at 9:57 AM, kdex <[hidden email]> wrote:
> > Already available, just prepend a minus sign like so:
> >
> > ```js
> > -Number.MIN_VALUE
> > ```
> >
> > Yours would be much longer to type and brings no additional value.
> >
> > On Saturday, May 12, 2018 6:54:42 PM CEST Abdul Shabazz wrote:
> > > Ok. How about Number.NEGATIVE_MIN_VALUE
> >
> > _______________________________________________
> > es-discuss mailing list
> > [hidden email]
> > https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Proposal: Add a global Infinitesimal property

Logan Smyth
Ah I think you're right, I had the value of `MIN_VALUE` wrong, sorry.

On Sun, May 13, 2018 at 6:49 AM, kdex <[hidden email]> wrote:
@Logan:

I think the number you're describing there is exactly `Number.MIN_VALUE`,
isn't it?

The machine epsilon is the smallest value ε for which 1 + ε > 1.
If we were to consider the relative-to-zero case, we would instead look for an
ε such that 0 + ε > 0 holds. `Number.MIN_VALUE` has this property, since

```0 + Number.MIN_VALUE === Number.MIN_VALUE```

and there are no positive values smaller than `Number.MIN_VALUE`.

On Saturday, May 12, 2018 7:01:38 PM CEST Logan Smyth wrote:
> It doesn't sound like `Number.MIN_VALUE` is what you want, is it? You're
> asking for something like `Number.EPSILON`, but relative to `0` instead of
> `1`?
>
> On Sat, May 12, 2018 at 9:57 AM, kdex <[hidden email]> wrote:
> > Already available, just prepend a minus sign like so:
> >
> > ```js
> > -Number.MIN_VALUE
> > ```
> >
> > Yours would be much longer to type and brings no additional value.
> >
> > On Saturday, May 12, 2018 6:54:42 PM CEST Abdul Shabazz wrote:
> > > Ok. How about Number.NEGATIVE_MIN_VALUE
> >
> > _______________________________________________
> > es-discuss mailing list
> > [hidden email]
> > https://mail.mozilla.org/listinfo/es-discuss

_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss



_______________________________________________
es-discuss mailing list
[hidden email]
https://mail.mozilla.org/listinfo/es-discuss
12