array slice syntax
brendan at mozilla.org
Thu Aug 16 11:01:41 PDT 2007
On Aug 16, 2007, at 10:42 AM, Lars T Hansen wrote:
> On 8/16/07, Stefan Gössner <stefan at goessner.net> wrote:
>> here are my first questions after following the list quite a while.
>> 1. I really like the array slice syntax [start:end:step] described in
>> The description seems to miss the case, where 'start' is greater
>> than 'end'.
>> (a) 'step' be implicitely set to -1 ?
>> (b) an empty array come as result ?
>> (c) an error occur ?
> The description seems to be clear here, the result should be an
> empty array.
Same as for Python:
>>> s = [1,2,3]
>> 2. The descendant operator '..' is mentioned only in the tutorial
>> I could not find it mentioned elsewhere.
>> Is it also considered to work with array notation as in:
>> y.. // access the first element of all arrays of 'y' and it's
> I don't think so. The descendant operator is for E4X (ECMAScript for
> XML, ECMA-357) and has not been discussed in other contexts. E4X is
> not included in ECMAScript 4 at this stage.
We are reserving E4X syntax but not requiring it to be supported.
The .. operator bugs me because it implicitly quotes its right
operand (as . does), so you could not use it as Perl and other
languages do for range operator. If it were a dyadic operator that
did not quote either operand, than it could be overridden by the
operators proposal (or an operators proposal, at any rate ;-) and
made to work for range (integer literal or value on left) as well as
for E4X (XML on left).
Generalizing query, matching, and filtering from E4X to the whole
use of practical research such as JMatch , all will have to wait
for a future Edition. But we certainly can discuss ideas here. Please
feel free to do so.
More information about the Es4-discuss