> That for...of syntax is very nice, is it an official part of ECMAScript 6?
Yes, although it's not implemented in V8 just yet. Once for-of and
generator-expressions are implemented, a lot of these operations will
become a lot nicer at the language level (rather than relying on cludgy
`suspend.map()` or whatever helpers).
Here's an example from the ES6 Wiki [1]:
(xhrGet(url) for (url of getURLs())) // hawt
[1] http://wiki.ecmascript.org/doku.php?id=harmony:generator_expressions
On Tuesday, July 16, 2013 2:36:44 AM UTC-4, cpprototypes wrote:
>
> The code sample I posted was a simplified example to demonstrate the
> issue. The actual command line script I was working on uses the response
> from the get request for other things. That for...of syntax is very nice,
> is it an official part of ECMAScript 6?
>
>
> On Friday, July 12, 2013 2:47:28 PM UTC-7, cpprototypes wrote:
>>
>> I'm using node 0.11.3 with --harmony-generators to try the new feature.
>> I found two libraries that should help use existing node callback-based
>> code with generators (suspend and galaxy). The code I'm trying to run was
>> similar to the following:
>>
>> (using suspend)
>>
>> var fs = require('fs');
>> var request = require('request');
>>
>> suspend(function* (resume) {
>> var contents = yield fs.readFile('idList.json', 'utf8', resume);
>> contents.split('\n').forEach(function(id) {
>> var info = yield request.get('http://www.example.com?id='+id,
>> resume);
>> });
>> })();
>>
>> (using galaxy)
>>
>> var galaxy = require('galaxy');
>> var fs = galaxy.star(require('fs'));
>> var request = galaxy.star(require('request'));
>>
>> function* main() {
>> var contents = yield fs.readFile('idList.json', 'utf8');
>> contents.split('\n').forEach(function(id) {
>> var info = yield request.get('http://www.example.com?id='+id);
>> });
>> };
>>
>> galaxy.unstar(main)(function(err, result) {
>> console.log('done');
>> });
>>
>> Using either library, when node tries to execute the get request ("var
>> info = yield request.get...") it exits with the following error:
>>
>> SyntaxError: Unexpected identifier
>>
>> And the error highlights the "request" part in "var info = yield
>> request.get..." I'm guessing that the creation of the new function scope
>> in the forEach is somehow causing an issue. But I'm not sure why it's not
>> working.
>>
>>
>>
--
--
Job Board: http://jobs.nodejs.org/
Posting guidelines:
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en
---
You received this message because you are subscribed to the Google Groups
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.