08:01 rnddim joined, ShimmerFairy left 08:07 rnddim is now known as ShimmerFairy 09:33 camelia left 09:35 camelia joined 09:43 nine left, nine joined 09:57 finanalyst joined 12:00 finanalyst left 13:35 finanalyst joined 14:36 librasteve_ left 15:01 finanalyst left 15:12 camelia left
lizmat m: { my class Foo::Bar { }; dd MY::<Foo>.WHO.keys; dd OUR::<Foo>.WHO.keys } # whee, all is good 15:45
evalable6__ ("Bar",).Seq
().Seq
lizmat m: class Foo::Baz { }; { my class Foo::Bar { }; dd MY::<Foo>.WHO.keys; dd OUR::<Foo>.WHO.keys } # WTF ?
evalable6__ ().Seq
("Bar", "Baz").Seq
lizmat m: my class Foo::Baz { }; { my class Foo::Bar { }; dd MY::<Foo>.WHO.keys; dd OUR::<Foo>.WHO.keys } # even weirder 15:47
evalable6__ ().Seq
().Seq
15:48
15:57 grayeul left
lizmat I wonder if the above problem (importing into OUR:: if the earlier part already exists there) could not be fixed by having a "my class Foo::Bar" *not* checking whether there's a "Foo" already? or at least ignore that if it is found in "OUR::" ? 16:18
m: class A::B { }; { my class A::B { } } # similar gotcha 16:53
evalable6__ (exit code 1) ===SORRY!=== Error while compilin… 16:54
lizmat, Full output: gist.github.com/e3d072bbac422fcd11...4fcc5d857f
lizmat m: my class A::B { }; { my class A::B { } } # similar gotcha
evalable6__
lizmat m: my class A::B { method a() { "outer" } }; { our class A::B { method a() { "inner" } } }; say A::B.a # another WAT, should probably be an error 17:12
evalable6__ inner
lizmat *compilation error
m: my class A::B { method a() { "outer" } }; { my class A::B { method a() { "inner" } } }; say A::B.a # that's... unexpected 17:13
evalable6__ inner
lizmat m: my $a = my class A::B { method a() { "outer" } }; { my class A::B { method a() { "inner" } } }; say $a.a # it's not gone, just shadowed improperly it seems 17:30
evalable6__ outer 17:31
18:11 [Coke] left 18:32 finanalyst joined 19:43 [Coke] joined 20:21 ShimmerFairy left 20:22 ShimmerFairy joined 21:39 finanalyst left