Your right... The more I think about it...
Number.range(from=0, to=Number. MAX_SAFE_INTEGER)
Is probably best, as a signature, then using .map(...) If you want a string
representation...
For that matter, wouldn't mind seeing more of the array utility methods,
like map, added to strings, iterating through each character, same as
.split('').map, but that's another discussion.
On Nov 4, 2016 3:11 AM, "Alexander Jones" <[email protected]> wrote:
+1000
Classic feature creep with basically zero application.
On Thursday, 3 November 2016, Isiah Meadows <[email protected]> wrote:
> Could we just *not* have a `String.range`?
>
> 1. Needing a list of alphabetically sorted characters is a bit niche, even
> in the Latin alphabet.
> 2. It's ambiguous whether it should include symbols or not. (think:
> `String.range("A", "z")`)
> 3. If it's Unicode-aware, how should it act with, say, `String.range("A",
> "π")`?
>
> On Thu, Nov 3, 2016, 16:21 Viktor Kronvall <[email protected]>
> wrote:
>
>> Even more interestingly what would `String.range("","zzz")` produce. From
>> what code point is the range started? Will this throw? Is the empty string
>> included in the iterator?
>> 2016年11月3日(木) 21:18 Viktor Kronvall <[email protected]>:
>>
>>> Actually, after giving it some more thought for that case there is just
>>> that one possibility that makes sense.
>>>
>>> However, there are more ambiguous cases such as `String.range("AAA",
>>> "ZZZ")` (should all letters increase at once or should the rightmost letter
>>> be incremented first)
>>>
>>> Also, how would range handle the arguments in inverted order? Should
>>> there be a decreasing range or should it terminate with no elements in the
>>> iterator?
>>> 2016年11月3日(木) 21:05 kdex <[email protected]>:
>>>
>>>> About the code points: `String.range` should also handle surrogate
>>>> pairs, similar to for..of does it.
>>>> About `String.range("A", "zzz")`: Do any other possibilities even make
>>>> sense?
>>>>
>>>> On Thursday, November 3, 2016 6:47:04 PM CET Viktor Kronvall wrote:
>>>> > For `String.range` what would the expected result of
>>>> > `String.range('A','zzz')` be?
>>>> >
>>>> > Is an exhaustive pattern expected?
>>>> >
>>>> > `['A','B','C',...'Z','a','b','c',...,'z','AA','AB',...]`
>>>> > 2016年11月3日(木) 19:21 Michael J. Ryan <[email protected]>:
>>>> >
>>>> > > If there's a Number.range, if suggest a corresponding String.range
>>>> for
>>>> > > character ranges... Agreed on it being a utility function over me
>>>> syntax.
>>>> > >
>>>> > > On Nov 3, 2016 10:25 AM, "Isiah Meadows" <[email protected]>
>>>> wrote:
>>>> > >
>>>> > > If string ranges are based on character codes, it will (for the
>>>> Latin
>>>> > > alphabet, at least, not necessarily for other languages).
>>>> > >
>>>> > > I would prefer a function over syntax, though, since it would be
>>>> more
>>>> > > easily adopted (polyfill > syntax), and it would fit more
>>>> idiomatically
>>>> > > with the rest of the language (which also uses functions for most
>>>> > > utilities).
>>>> > >
>>>> > > Maybe a `Number.range` would work?
>>>> > >
>>>> > > ```js
>>>> > > Number.range = function *range(start, end=undefined, step=1) {
>>>> > > if (end === undefined) [start, end] = [0, start];
>>>> > > if (end === undefined) end = Infinity;
>>>> > > for (let i = 0; i < end; i += step) {
>>>> > > yield i;
>>>> > > }
>>>> > > };
>>>> > > ```
>>>> > >
>>>> > > On Thu, Nov 3, 2016, 12:56 kdex <[email protected]> wrote:
>>>> > >
>>>> > > Agreed. There's no reason why `Array.range` or `[1..10]` couldn't
>>>> just
>>>> > > return a generator
>>>> > > or at least something that extends a generator, though. I wonder if
>>>> it's
>>>> > > viable to implement
>>>> > > something akin to `.length` on ranges, which could be natural
>>>> numbers or
>>>> > > `Infinity`.
>>>> > >
>>>> > > As for numbers, I don't see any issues. One issue that came up in
>>>> the
>>>> > > original thread was
>>>> > > that string ranges may need a better definition, as ["A".."C"]
>>>> might not
>>>> > > necessarily transpile
>>>> > > to be a generator that yields "A", "B" and "C".
>>>> > >
>>>> > > On Thursday, November 3, 2016 4:46:03 PM CET Isiah Meadows wrote:
>>>> > > > I'll note, just for clarity, that Scala's `1 to 10` is
>>>> technically just a
>>>> > > > normal method call equivalent to `(1).to(10)`, with optional
>>>> parentheses
>>>> > > > removed.
>>>> > > >
>>>> > > > Also, I'd prefer this to be a generator instead, so infinite
>>>> ranges are
>>>> > > > also possible, and so it doesn't have to be eager.
>>>> > > >
>>>> > > > On Thu, Nov 3, 2016, 11:52 Hikaru Nakashima <
>>>> [email protected]>
>>>> > > > wrote:
>>>> > > >
>>>> > > > > How about this
>>>> > > > >
>>>> > > > > ```
>>>> > > > > for ( i of Array.range(1, 10) ) { ... }
>>>> > > > > // OR
>>>> > > > > for ( i of [1..10] ) { ... }
>>>> > > > > ```
>>>> > > > >
>>>> > > > >
>>>> > > > > _______________________________________________
>>>> > > > > es-discuss mailing list
>>>> > > > > [email protected]
>>>> > > > > https://mail.mozilla.org/listinfo/es-discuss
>>>> > > > >
>>>> > > >
>>>> > > _______________________________________________
>>>> > > es-discuss mailing list
>>>> > > [email protected]
>>>> > > https://mail.mozilla.org/listinfo/es-discuss
>>>> > >
>>>> > >
>>>> > > _______________________________________________
>>>> > > es-discuss mailing list
>>>> > > [email protected]
>>>> > > https://mail.mozilla.org/listinfo/es-discuss
>>>> > >
>>>> > > _______________________________________________
>>>> > > es-discuss mailing list
>>>> > > [email protected]
>>>> > > https://mail.mozilla.org/listinfo/es-discuss
>>>> > >
>>>>
>>>> _______________________________________________
>>>> es-discuss mailing list
>>>> [email protected]
>>>> https://mail.mozilla.org/listinfo/es-discuss
>>>>
>>> _______________________________________________
>> es-discuss mailing list
>> [email protected]
>> https://mail.mozilla.org/listinfo/es-discuss
>>
>
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss