Ovid skribis 2005-04-10 10:47 (-0700): > Apologies if this has been covered. What should this do? > ($x,$y) := ($y,$x);
It would let $x be a second name for the variable that is also called $y, and $y for $x. The old names $x and $y are overwritten, so essentially the names for the two variables swapped without copying or moving values around. This is assuming that bound variables are visible only after the entire bind expression is handled. Which would have to mean that the expressions for default values are special. > ($c, $d) := ($y, $x); > # later > ($x,$y) := ($c, $d); # whoops! I imagine that that has the same effect as ($x, $y) := ($y, $x); ($c, $d) := ($x, $y); Of which I wonder if it can be written as ($c, $d) := ($x, $y) := ($y, $x); Juerd -- http://convolution.nl/maak_juerd_blij.html http://convolution.nl/make_juerd_happy.html http://convolution.nl/gajigu_juerd_n.html