On Fri Sep 18 21:06:23 2009, carlin wrote: > The variable declaration should fail with an informative error message > rather than silently not assigning it (unless that is supposed to be > possible?) > > > class foo { method bar { my $!baz = 'lorem'; say $!baz; }; }; > foo.bar; > No such attribute '$!baz' > in method foo::bar (<unknown>:1) > > > class foo { has $!baz = 'ipsum'; method bar { my $!baz = 'lorem'; > say $!baz; }; }; my $foo = foo.new; $foo.bar; > ipsum > > > class foo { has $!baz; method bar { my $!baz = 'lorem'; say $!baz; > }; }; my $foo = foo.new; $foo.bar; > Use of uninitialized value > > -- > Carlin
These now all fail similarly; 08:53 < [Coke]> rakudo: class foo { method bar { my $!baz = 'lorem'; say $!baz; }; }; 08:54 <+p6eval> rakudo 9719f7: OUTPUT«===SORRY!===Cannot use ! twigil on my variable at line 1, near " = 'lorem'"» 08:54 < [Coke]> rakudo: class foo { has $!baz = 'ipsum'; method bar { my $!baz = 'lorem';say $!baz; }; }; my $foo = foo.new; $foo.bar; 08:54 <+p6eval> rakudo 9719f7: OUTPUT«===SORRY!===Cannot use ! twigil on my variable at line 1, near " = 'lorem'"» 08:53 < [Coke]> rakudo: class foo { has $!baz; method bar { my $!baz = 'lorem'; say $!baz; }; }; my $foo = foo.new; $foo.bar; 08:53 <+p6eval> rakudo 9719f7: OUTPUT«===SORRY!===Cannot use ! twigil on my variable at line 1, near " = 'lorem'"» ... closable with tests. -- Will "Coke" Coleda