Talk:Delay (programming)

From Wikipedia, the free encyclopedia

This article is essentially a definition of delayed evaluation, a concept that is already explained in the article on lazy evaluation. The latter article could use some work but both of these articles need to be developed in coordination with each other. I do have one proposal. In the article on lazy evaluation the concepts of lazy and delayed evaluations are treated as equivalent, which ignores the fact that lazy evaluation usually refers to a type of delayed evaluation where each argument expression is never evaluated more than once. Implementing this more efficient version of delayed evaluation is involved and could warrant an article to itself. So my proposal is to create a separate article on delayed evaluation and merge this article with portions of the article on lazy evaluation and have the article on lazy evaluation focus only on the notion I just described. A B Carter (talk) 12:08, 25 March 2007 (UTC)

This article is about Actors (objects, processes) that implement delays. As such it is closely related to but different than the evaluation method Delayed Evaluation that is used in some programming languages. You have a good suggestion that the material in these articles should be tightly integrated. --2ndMouse 20:03, 25 March 2007 (UTC)
The suggested "article on delayed evaluation" is Futures and promises. It already duplicates the whole content of this article, in the 'Definition' section, but with 'future' in place of 'delay'. This matches my understanding: 'delay' is just a synonym for 'future', and delayed evaluation can be either eager or lazy (see for example Scheme SRFI 45). I suggest making Delay (programming) a redirect to Futures and promises, and explaining the usage of the term 'delay' there. --DavidHopwood 17:12, 8 April 2007 (UTC)