Is it possible to share the example code?

On Mon, Oct 10, 2011 at 6:18 PM, John J Barton
<[email protected]>wrote:

>
>
> On Mon, Oct 10, 2011 at 3:09 PM, Brendan Eich <[email protected]> wrote:
>
>> On Oct 10, 2011, at 1:41 PM, Bob Nystrom wrote:
>>
>> On Mon, Oct 10, 2011 at 1:33 PM, Dean Landolt <[email protected]>wrote:
>>
>>>
>>> Here's an example:
>>>
>>>>
>>>> let tree = [['a', 'b', 'c'], [['d', 'e'], 'f'], ['g']];
>>>>
>>>> let inOrder = walk(tree);
>>>> for (node of walk(tree)) alert(node); // a, b, c, d, ...
>>>>
>>>> walk(tree) {
>>>>   if (typeof tree == 'string') {
>>>>     yield tree; // leaf
>>>>   } else {
>>>>     yield* walk(tree); // branch
>>>>   }
>>>> }
>>>>
>>>>
>>>> What would the above look like without generators?
>>>>
>>>
>>>
>>> Woah there -- where does this syntax come from? Was `walk(tree) {...}`
>>> supposed to be `function* walk(tree) {...}` instead? Or is this intended to
>>> represent some sort of method generator? If the latter, doesn't this need
>>> some mechanism to distinguish it from a non-generator method?
>>>
>>
>> Whoops, my mistake. Too much time working on the class proposal where
>> "function" isn't needed for methods.
>>
>>
>> I spy a Dart ;-).
>>
>>
>> Yes, that should be function*.
>>
>>
>> Still a great delegated generator example. Thanks,
>>
>
> Bob sent me a more complete and much more convincing example off line.  It
> was more convincing because he had three different algorithms use the same
> iterator. Did not convert me but I am at least moved out of the "no way"
> column.
>
> jjb
>
>>
>> /be
>>
>>
>>
>> _______________________________________________
>> 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

Reply via email to