Swift style syntax
mike.mcglothlin at gmail.com
Fri Oct 16 20:47:43 UTC 2015
Having Op for all operator functions would be a good call. Probably better
than adding Bitwise, Logic, etc just from the point of view of not filling
up the namespace to much. I think short names would be fine so long as they
were readable. So leftShift could be lShift but lsh is probably to
mysterious. Even operator-like functions without an actual operator
assigned would make sense I think so no reason not to include pow. A
general purpose casting operator/func would be good I think but not sure if
there is a point to specialized ones just to numbers, strings, and whatnot.
On Fri, Oct 16, 2015 at 2:39 PM, Isiah Meadows <isiahmeadows at gmail.com>
> That might work, although these two might need edited for consistency:
> - Math.pow === Op.pow (assuming `**` gets in)
> - Op.num should be similar to `x => +x`, not `x => ToNumber(x)`. The
> behavior is slightly different, but can be observable without modifying
> `Number`, I believe.
> On Fri, Oct 16, 2015, 14:43 Tab Atkins Jr. <jackalmage at gmail.com> wrote:
>> On Thu, Oct 15, 2015 at 11:12 PM, Isiah Meadows <isiahmeadows at gmail.com>
>> > I like the idea, but could the function names be made a little
>> > shorter? I'd like to at least save some characters on it. Example:
>> > `(a, b) => a > b` is 15 characters, where `Math.greaterThan` is 16.
>> > For comparison, I also have equivalent versions for the colon-preceded
>> > Here's some naming ideas I have:
>> At that point, though, the use of the Math namespace starts getting
>> weird. Equality and Logical aren't mathematical; Bitwise mostly isn't
>> either. (It can sometimes be used to do mathy things, like using
>> shift to mul/div by a power of 2, but that's not its core purpose.)
>> Put them on a new Op namespace object, or into an Op built-in module.
>> Even shorter, and clearer!
> es-discuss mailing list
> es-discuss at mozilla.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the es-discuss