title: What are the differences between Deferred, Promise and Future in JavaScript?
body: <p>What are the differences between Deferreds, Promises and Futures?<br>
  Is there a generally approved theory behind all these three?</p>