|
Posted by John W. Kennedy on 10/03/07 22:35
Dennis Lee Bieber wrote:
> On Mon, 01 Oct 2007 01:53:47 GMT, Roedy Green
> <see_website@mindprod.com.invalid> declaimed the following in
> comp.lang.python:
>
>
>> Seem to me you could in FORTRAN and Pascal, and maybe even Algol. It
>> has been a while.
>>
> Everything in classic FORTRAN is a passed as a reference -- even
> constant arguments are passed as a reference to the memory location
> containing that constant (which is why it was possible in very early
> FORTRANs to have "a = 1 + 1" yield something other than "2" if preceded
> by, say, "call mutate(1)" where mutate looks like:
>
> subroutine mutate(arg)
> arg = arg * 2
> end
>
> )
However, some implementations passed /and returned/ elementary arguments
by value, as Ada does. (The object code was typically faster that way,
and FORTRAN semantics were such that the difference was almost
impossible to observe.)
--
John W. Kennedy
"The pathetic hope that the White House will turn a Caligula into a
Marcus Aurelius is as naïve as the fear that ultimate power inevitably
corrupts."
-- James D. Barber (1930-2004)
[Back to original message]
|