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) |
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
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.