It is more generic than `fromEntries`

On Wed, 9 Aug 2017 at 13:32 Naveen Chawla <naveen.c...@gmail.com> wrote:

> Iterable to object via `Object.fromIterable`
>
> On Wed, 9 Aug 2017 at 13:31 Jordan Harband <ljh...@gmail.com> wrote:
>
>> JS doesn't have interfaces (yet, tho there's a proposal) and regardless,
>> the "interface" for "iterable" is "it has Symbol.iterator, nothing more".
>>
>> The only place a method like this - that produces an object - could
>> possibly exist, is a static method on Object.
>>
>> I've already outlined two existing methods to copy one object's entries
>> to another; the only new functionality would be "creating an object from
>> entries", hence Object.fromEntries or similar.
>>
>> I still haven't seen any use cases that aren't covered by the existing
>> "copy one object to another", or by a possible "entries to object" - does
>> anyone have any?
>>
>> On Wed, Aug 9, 2017 at 12:56 AM, Naveen Chawla <naveen.c...@gmail.com>
>> wrote:
>>
>>> But I accept that this a very tall order for ES
>>>
>>> On Wed, 9 Aug 2017 at 13:22 Naveen Chawla <naveen.c...@gmail.com> wrote:
>>>
>>>> Java has a great example of such a construct: default interface methods
>>>>
>>>> On Wed, 9 Aug 2017 at 13:21 Naveen Chawla <naveen.c...@gmail.com>
>>>> wrote:
>>>>
>>>>> The `toObject` behaviour doesn't need to be "implemented" on a
>>>>> per-iterable class basis. It has a constant behaviour: iterate and on each
>>>>> next(), pass the value to the `toKeyFromElement` and `toValueFromElement`
>>>>> callbacks to generate and return an object. There must be some construct 
>>>>> by
>>>>> which that can be achieved. I wouldn't call it "better" to put it on 
>>>>> Object
>>>>> (for the reasons stated), but rather a compromise in the absence of any
>>>>> such construct
>>>>>
>>>>> On Wed, 9 Aug 2017 at 13:12 T.J. Crowder <
>>>>> tj.crow...@farsightsoftware.com> wrote:
>>>>>
>>>>>> On Wed, Aug 9, 2017 at 8:35 AM, Naveen Chawla <naveen.c...@gmail.com>
>>>>>> wrote:
>>>>>> >
>>>>>> > It would be in the `iteratable` `protocol` (interface)
>>>>>>
>>>>>> As Jordan said, that's likely to be a nonstarter. The Iterable
>>>>>> protocol is *very* lean (exactly one required property) for a reason: So 
>>>>>> it
>>>>>> can be supported with minimum investment. Much better, IMHO, to put
>>>>>> functions on `Object` and `Map` (which is why that's what I suggested).
>>>>>>
>>>>>> -- T.J. Crowder
>>>>>>
>>>>>
>>
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to