

RethinkDB with io.js: exploring ES6 generators and the future of JavaScript - mglukhovsky
http://rethinkdb.com/blog/rethinkdbdash-iojs/

======
sandstrom
I like the article, and I look forward to ES6 generators.

However, if someone want the compactness of the second example today,
CoffeeScript is another alternative:

    
    
        conn = undefined
        r.connect().then (c) ->
          conn = c
          r.dbCreate('quake').run(conn)
        .then ->
          r.db('quake').tableCreate('quakes').run(conn)
        .then ->
          r.db('quake').table('quakes')
                       .indexCreate('geometry', geo: true).run(conn)
        .then -> 
          r.db('quake').table('quakes')
                       .insert(r.http(feedUrl)('features')).run(conn)
        .error (err) ->
          console.log(err) if err.msg.indexOf('already exists') == -1
        .finally ->
          conn.close() if conn
    

(obviously the main benefits with generators aren't concise code, but since
the article mentioned conciseness I thought I'd post the CoffeeScript
equivalent)

~~~
Bahamut
That can be done via ES6 as well, replacing -> with => and adding parentheses
for those lambdas.

~~~
sandstrom
True! The only difference are implicit returns and significant whitespace I
guess (and trailing same-line conditionals).

(think it'll even have the skinny arrow, the fat one binds `this` too)

