Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:105098 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 63052 invoked from network); 5 Apr 2019 11:54:45 -0000 Received: from unknown (HELO mail-io1-f45.google.com) (209.85.166.45) by pb1.pair.com with SMTP; 5 Apr 2019 11:54:45 -0000 Received: by mail-io1-f45.google.com with SMTP id x3so4354106iol.10 for ; Fri, 05 Apr 2019 01:50:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=Lhpt71oI2m/aJM/r1UDRgOPCPKKeI1SOepFN9HJJPts=; b=cYGuFdA60RbwRGQ5VHXh8hEFpHGhbfHUNNibqQ5U8MQqr7gwgoFOCVwg7llrPuiXwr cX/Pg4f7p6rdWQK8HCuXR6QU4dYUOlxfrGe75xXfhkxGIJnj5LTAPkpEKWMKKSZf0Wq2 g21bDwDChHVavqEt3yElWahnGirnM4bX4K2i2l87BjnTxjAza/v2sjj1aonOlcllr3cO 3o1JBVPHDnRIWE5/W1QEHrpL7gA1BuGXA+Egi9Gh8xgomAzVFBoX8c7l+RIBnzFcO91o QqRq5QhPnBJUWaaxOmQGOPk6hWZ1pKTgIU2WLkUtEnlls+qzt1kE3muYsSvEEtV9AFNP 6mkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=Lhpt71oI2m/aJM/r1UDRgOPCPKKeI1SOepFN9HJJPts=; b=CDV2cU4HJfYZJ+b/VR0shhyBB5xfNj48VquuaNVnOuUAsQBR8cNPVgjvQDVGVkU7gi IW0C/rw4jXtMqPjPbo7ul72Bkf1e6NAdKEh4Wqr1Ph22HrLEZ0sUuovQ6vzW7tvJZ3f9 At2p4mAqFRtILc+7et4YmsjLO7R1NdZ5nFLHmKnwbJsbgOmtg9GgPNL1+K+ChkTCYWCg 7qBj6pNrAyvH6jLTtxmECSOcFcdoZqROoZfCUhdhA2Yigg+uHbH/S5kHLUXsJOBUFNEr lw6dbAKlwSGbFlDPyeurcOf0JAXb1fuclNF8K/K1otn9McW0si9y0i640Yw380UnHTi2 YtUg== X-Gm-Message-State: APjAAAXDgQRdY2hNN2QuiW96zXbSGw6sjwJJPux3DKU4kiiphswUCCz+ nxiaFjLCYD6g+grpqy/LbJUp807z0rj75HvKwMZw6Jrn X-Google-Smtp-Source: APXvYqwP7eIOs4OZyFJumJa9G0N5NV8+eePJS2l4Spy0RUaVz/1M4dhnsggW6mUcNen6sAfPBKyL8h/RVgKL0eM4ZsQ= X-Received: by 2002:a6b:6b12:: with SMTP id g18mr7111440ioc.14.1554454235748; Fri, 05 Apr 2019 01:50:35 -0700 (PDT) MIME-Version: 1.0 References: <003a01d4eaf0$c17d6c20$44784460$@jhdxr.com> <00a401d4eb7c$afa671e0$0ef355a0$@jhdxr.com> In-Reply-To: Date: Fri, 5 Apr 2019 09:50:24 +0100 Message-ID: To: PHP internals Content-Type: multipart/alternative; boundary="0000000000008a9e060585c4949a" Subject: Re: [PHP-DEV] [RFC] Spread Operator in Array Expression v0.2 From: rowan.collins@gmail.com (Rowan Collins) --0000000000008a9e060585c4949a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, 5 Apr 2019 at 09:31, Micha=C5=82 Brzuchalski wrote: > The next paragraph in MDN document is spread operator for object literals > https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operato= rs/Spread_syntax#Spread_in_object_literals > Now JavaScript objects can be used like our array with keys and I simply > don't understand why we cannot preserve keys, like in JS object literals > The original draft discussed this, but there wasn't agreement on how identical keys should be handled, e.g.: $a =3D ['foo' =3D> 1, ...['foo' =3D> 2]] Should $['foo'] be 1 or 2? Cases were made for both, and it was pointed out that if we get named arguments, the argument spread operator will need to work the same way as whatever is decided for arrays. So the current approach is to get integer keys working first, using the same behaviour as for parameters, and then revisit string keys later. Regards, --=20 Rowan Collins [IMSoP] --0000000000008a9e060585c4949a--