Re: Parameter binding

2009-07-29 Thread TSa
HaloO, Patrick R. Michaud wrote: ...except that captures don't capture values -- they form references. I know. The semantics I have in mind is available as \($x is copy) which unfortunately is not the default. I'm actually unsure if this is valid syntax because that implies a mixture of

Re: Parameter binding

2009-07-29 Thread TSa
HaloO, Larry Wall wrote: Yes, I think think you're probably right that the correctest answer to this will be to make the operation of binding $x++ trigger the autoincrement lazily. I consider this answer far from correct. Postincrement is an operator like any other code object and it returns

Re: Parameter binding

2009-07-27 Thread Larry Wall
On Sat, Jul 25, 2009 at 06:50:12PM -0700, yary wrote: : On Sat, Jul 25, 2009 at 2:04 PM, Patrick R. Michaudpmich...@pobox.com wrote: : On Thu, Jul 23, 2009 at 05:56:31PM +0200, TSa wrote: : Hmm, it seems to be the case that the binding is defined to be a : readonly binding to the variable. I

Re: Parameter binding

2009-07-25 Thread Patrick R. Michaud
On Thu, Jul 23, 2009 at 05:56:31PM +0200, TSa wrote: Hmm, it seems to be the case that the binding is defined to be a readonly binding to the variable. I consider this a bad thing. We should have my $x = 1; foo($x++,$x,$x++); to call foo(1,2,2) and not foo(1,3,2) or even foo(2,3,1). The

Re: Parameter binding

2009-07-25 Thread yary
On Sat, Jul 25, 2009 at 2:04 PM, Patrick R. Michaudpmich...@pobox.com wrote: On Thu, Jul 23, 2009 at 05:56:31PM +0200, TSa wrote: Hmm, it seems to be the case that the binding is defined to be a readonly binding to the variable. I consider this a bad thing. We should have my $x = 1;

Re: Parameter binding

2009-07-23 Thread TSa
HaloO, Moritz Lenz wrote: I came to this 12:51 @moritz_ rakudo: my $x = 3; say $x, ' ', ++$x; 12:51 p6eval rakudo 7b81c0: OUTPUT«4 4␤» 12:51 @moritz_ rakudo: my $x = 3; say $x, ' ', $x++; 12:51 p6eval rakudo 7b81c0: OUTPUT«4 3␤» I would expect that to say '3 4' and '3 3' respectively.

Parameter binding

2009-07-22 Thread Moritz Lenz
Hi, I came to this 12:51 @moritz_ rakudo: my $x = 3; say $x, ' ', ++$x; 12:51 p6eval rakudo 7b81c0: OUTPUT«4 4␤» 12:51 @moritz_ rakudo: my $x = 3; say $x, ' ', $x++; 12:51 p6eval rakudo 7b81c0: OUTPUT«4 3␤» This looks very counter intuitive, because it looks like the arguments are evaluated