Re: Call by name in Algol-60

"John Lindsay" <lindsay-j@rmc.ca>
24 Mar 1998 22:41:51 -0500

          From comp.compilers

Related articles
Call by name in Algol-60 RogerHA@aol.com (RogerHA) (1998-03-07)
Re: Call by name in Algol-60 xxx@info.lv (1998-03-15)
Re: Call by name in Algol-60 RogerHA@aol.com (RogerHA) (1998-03-18)
Re: Call by name in Algol-60 lindsay-j@rmc.ca (John Lindsay) (1998-03-18)
Re: Call by name in Algol-60 xxx@info.lv (1998-03-20)
Re: Call by name in Algol-60 lindsay-j@rmc.ca (John Lindsay) (1998-03-24)
| List of all articles for this month |

From: "John Lindsay" <lindsay-j@rmc.ca>
Newsgroups: comp.compilers
Date: 24 Mar 1998 22:41:51 -0500
Organization: Royal Military College of Canada
References: 98-03-074 98-03-124 98-03-160 98-03-193
Keywords: algol60

xxx@info.lv wrote:


.... snip ....


> ..... There are no implicit type conversions
> permitted in these languages,


There is one -- integer to real.


> .... so, there is no need for run time type
> checks too.


Right, the distinction between passing a variable and passing
a value is pretty explicit, and this takes care of the problem nicely.


> ..... In Algol-60 type checking between compilation units was
> nonexistent (as far as I know), and all things you said are absolutely
> correct in case of Algol.


It seems that the natural tendency to make 'obvious', 'simple',
'elegant' extensions to languages goes past some sort of boundary when
one considers procedure/function calls. The results of doing things
like array variables and expressions, especially when one allows array
cross-sections or slices as pseudo-variables rather than just as
values, may be obvious, simple and elegant in one way and
counter-intuitive, complex and ugly in several others. I think we
look longingly and frustratedly in such directions.


> [Remember that call by name was a mistake. The Algol60 was trying to write
> an elegant definition of call by reference and inadvertently created call
> by name. Nobody realized it until the paper on Jensen's device. -John]


This seems right. It was a couple of years until people realized that
a useful, horrible, delightful, problematic and interesting can of
worms had indeed been opened.
--
John H. Lindsay lindsay_j@rmc.ca
Department of Mathematics and Computer Science
ROYAL MILITARY COLLEGE OF CANADA
P O BOX 17000 STN FORCES
KINGSTON ON K7K 7B4 CANADA


Phone: (613) 541-6000--1--6419
Fax: (613) 541-6584
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.