NYTimes.com: John W. Backus, 82, Fortran Developer, Dies
This page was sent to you by: paul.hudak@yale.edu. John Backus, inventor of Fortran, Turing Award winner, and also an early pioneer in functional programming, died Saturday at his home in Oregon. Many of us have fond memories of him in the earlier days of our careers, and we all owe a lot to him for giving credibility to functional programming through his Turing Award lecture, "Can Programming Be Libarated From the von Neumann style?" Here is an article from the New York Times. BUSINESS | March 20, 2007 John W. Backus, 82, Fortran Developer, Dies By STEVE LOHR Mr. Backus assembled and led the I.B.M. team that created Fortran, the first widely used programming language. http://www.nytimes.com/2007/03/20/business/20backus.html?ex=1175054400&en=d7... ---------------------------------------------------------- ABOUT THIS E-MAIL This e-mail was sent to you by a friend through NYTimes.com's E-mail This Article service. For general information about NYTimes.com, write to help@nytimes.com. NYTimes.com 500 Seventh Avenue New York, NY 10018 Copyright 2007 The New York Times Company
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? Dan Weston paul.hudak@yale.edu wrote:
John Backus, inventor of Fortran, Turing Award winner, and also an early pioneer in functional programming, died Saturday at his home in Oregon. Many of us have fond memories of him in the earlier days of our careers, and we all owe a lot to him for giving credibility to functional programming through his Turing Award lecture, "Can Programming Be Libarated From the von Neumann style?" Here is an article from the New York Times.
* BUSINESS * | March 20, 2007 * John W. Backus, 82, Fortran Developer, Dies <http://www.nytimes.com/2007/03/20/business/20backus.html?ex=1175054400&en=d76ca10764a7769f&ei=5070&emc=eta1>
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
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".
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".
participants (3)
-
Dan Weston -
Douglas Philips -
paul.hudak@yale.edu