I understand on stylistic/clarity grounds that people may prefer one approach over the other but I'm trying to understand if there is any situation that you can not use a Promise and must use a Deferred. For reference I'm using the Q javascript library but I would imagine it would be applicable to any other library and language. I don't believe the explanation under "Deferreds are cool because..." actually describes a case where it is impossible to achieve the same thing with a simple q.Promise()
call (and thus you have to use a Deferred
) but I wanted to check that is correct.
Are deferreds solely about eliminating the "pyramid of doom" or is there more too them?
This question is interesting but doesn't really tackle this particular question.