On 3/20/07, Dan Weston <[EMAIL PROTECTED]> wrote:
Dan Weston wrote: > Douglas Philips wrote: >> On 2007 Mar 20, at 3:30 PM, Dan Weston indited: >> >>> I looked up John Backus on wikipedia and followed a link to ALGOL: >>> http://en.wikipedia.org/wiki/ALGOL_60 >>> where the following "undesirable" property of call-by-name is mentioned. >>> >>> "ALGOL 60 allowed for two evaluation strategies for parameter >>> passing: the common call-by-value, and call-by-name. Call-by-name had >>> certain limitations in contrast to call-by-reference, making it an >>> undesirable feature in language design. For example, it is impossible >>> in ALGOL 60 to develop a procedure that will swap the values of two >>> parameters if the actual parameters that are passed in are an integer >>> variable and an array that is indexed by that same integer variable. >>> However, call-by-name is still beloved of ALGOL implementors for the >>> interesting thunks that are used to implement it." >>> >>> I suppose that call-by-name is still beloved of Haskell implementors >>> as well? >> >> Notice that the "problem" with call-by-name is when side-effects are >> involved. In a pure-functional-environment those "problems" don't >> arise... >> >> --Doug > > It was the phrase "making it an undesirable feature in language design" > that jumped out at me. Here "language" is an implicitly universally > quantified variable, and the phrase beta-reduces to "call-by-name is an > undesirable feature in Haskell design".
Ah, but since everything on wikipedia is true yet the conclusion you reached by beta-reduction is false, I believe you have shown that beta-reduction is invalid. That's alright though, I never liked function application much anyway.
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe