In article <20010107175242.A1935@pembro26.pmb.ox.ac.uk>, Simon Cozens <simon@cozens.net> writes: > On Sun, Jan 07, 2001 at 12:30:06PM -0500, Ronald J Kimball wrote: >> > sub foo :lvalue {shift} foo($a) = 7 >> >> "it is possible to return a modifiable value from a subroutine" does not at >> all mean the same thing as "all values returned from a subroutine are >> modifiable". > > Fair enough. Try this: > I am returning a value from a subroutine. > The value I am returning is the value of the first parameter. > The value of first parameter of the subroutine is modifiable. > The value that I am returning is modifiable. > > Where's the fallacy? You are returning a COPY of the value of the first parameter. shift does not give an lvalueThread Previous | Thread Next