That's overstating it a bit. It's very easy to convert to promise-based code, e.g.:
var fs = require('fs'); var Q = require('q'); var readFile = Q.denodeify(fs.readFile); var writeFile = Q.denodeify(fs.writeFile); readFile('src.txt').then(function (result) { writeFile('dest.txt', result); }).done(); Since this conversion process is pretty mechanical, there are several libraries that have done it for you, e.g. https://npmjs.org/package/pr ________________________________ From: nodejs@googlegroups.com [nodejs@googlegroups.com] on behalf of Baz [b...@thinkloop.com] Sent: Thursday, May 23, 2013 13:28 To: nodejs@googlegroups.com Subject: Re: [nodejs] Re: trying to wrap my head around "promises" - async vs Q Thanks Matt, so just to be crystal clear, if I'm using promises in my own code, then I happen to have a flow that depends on fs, for example, and since fs doesn't return or use promises, I would have to drop out of the promises paradigm and manage that particular part of the flow control with callbacks or something like asynch? On Thu, May 23, 2013 at 7:01 AM, Matt <hel...@gmail.com<mailto:hel...@gmail.com>> wrote: On Thu, May 23, 2013 at 3:29 AM, Baz <b...@thinkloop.com<mailto:b...@thinkloop.com>> wrote: I am new to Node and trying to decide between promises, asynch and vanilla, there are so many good arguments for each. Mikeal, do you mind expanding further how using promises in your own, non-shared, code could hinder use of node? Do a lot of the libs that depend on asynch require you to use asynch as well (or make things easier if you do)? I think the problem with promises is that the core node libraries aren't implemented with promises, so if you need to do a series of e.g. fs calls (typical example might be open, then stat, then create a readStream from the fd) you wind up using async anyway, or manually coding up the nested callbacks, which can feel ugly once you've started using a particular flow control library. And then once you start using async for one thing, it just starts to feel natural. It just fits so perfectly with the Node ecosystem. In short: There's nothing wrong with the promises model (although I find it overly verbose), it's just that async fits better with node libraries. Matt. -- -- 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 nodejs@googlegroups.com<mailto:nodejs@googlegroups.com> To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com<mailto:nodejs%2bunsubscr...@googlegroups.com> 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 nodejs+unsubscr...@googlegroups.com<mailto:nodejs%2bunsubscr...@googlegroups.com>. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com 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 a topic in the Google Groups "nodejs" group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/nodejs/mWtqFE0spWk/unsubscribe?hl=en. To unsubscribe from this group and all its topics, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- 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 nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com 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 nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.