Talk:Future (programming)

From Wikipedia, the free encyclopedia

I really don't believe that the use of the definition of "Promise" is the correct term to be used in this article, but rather "expectations". Humans expect things that are better than was previously presented before, and this is the future of anything. Everything that has been invented and engineered was due to to the fact that people were confronted with a limited problem that involved the expectations of something better. To promise something would imply that a time machine would have already been invented, for example. It is more accurate to say that the belief in the invention of a time machine by now was a possibility, or even an expection, in that era. To promise this would guarantee that it was definitely a reality now. That is if a promise is like anything my loving girlfriend pulls off time and time again. I've had a few drinks in the past few hours, so I hope I make some sense. E-mail me if you have any questions, I'm sure I'd find it entertaining arguing with you. Bring it on nerds. cerulean_flame@yahoo.com

Well, since Wikipedia documents, not invents, the issue is a bit moot. They're called "futures" and "promises" in the field, so calling them anything else on Wikipedia will just confuse matters. (Oh, and where i come from, you can only make promises about the future, and promises can be broken. :) --Piet Delport 12:47, 10 January 2006 (UTC)

[edit] Java 1.5 Futures

Is there any relation to Future interface in the Java API?

Not really. You can think of Java's Future as a one-element, one-shot, thread-safe result queue. It's useful for thread synchronization, but doesn't implement any of the techniques described in this article. --Piet Delport 10:46, 3 February 2006 (UTC)
Addendum: As the article mentions, there is a dialect of Java, called Flow Java, which does implement single-assignment and future variables. The website has a nice paper and presentation about how they are used, and what kind of problems they can solve. --Piet Delport 09:52, 5 April 2006 (UTC)

[edit] Twisted's Deferred

Is this the same as Twisted's deferred object? If not, how does it differ?

Not meaningfully. Deferreds are similar to Java 1.5's Future, discussed above; the main difference is that they're usually used without threads, and have their results processed by a dual callback/errback chain instead of a polling/blocking caller. --Piet Delport 23:55, 19 September 2006 (UTC)