Sorry to arrive so late here. I had the impression that there was some issue with the documentation here somewhere. Is that still the case? Can we improve docs in any way?
El jue., 11 oct. 2018 a las 15:36, Richard Hogaboom (< richard.hogab...@gmail.com>) escribió: > # > # example from https://docs.perl6.org/language/packages > # > # from documentation under Package-qualified names: > # > # "Sometimes it's clearer to keep the sigil with the variable name, so > an alternate way to write this is: > # Foo::Bar::<$quux> > # (This does not work with the &zape variable) The name is resolved at > compile time because the variable name is a constant." > # > # So, I tried &zape, which gives the expected error output. However, it > suggests possible corrections, which I tried. > # say Foo::Bar::<&zape>; should also fail, but compiles, executes, does > nothing, gives strange msg > # > > use v6; > > class Foo { > class Bar { > our &zape = { "zipi" }; > } > } > > say Foo::Bar::zape; # works - prints 'zipi' > > # this should not compile - see error msg below > #say Foo::Bar::&zape; # Nope - it does not compile - correct > > # ===SORRY!=== Error while compiling > /home/hogaboom/hogaboom/Perl6/p6ex/./p6Packages.p6 > # Malformed lookup of ::&zape; please use ::('&zape'), ::{'&zape'}, or > ::<&zape> > # at /home/hogaboom/hogaboom/Perl6/p6ex/./p6Packages.p6:12 > # ------> say Foo::Bar⏏::&zape; # Nope - not compile - correct > > # this also should not compile > say Foo::Bar::<&zape>; # compiles - executes - does nothing useful - > gives following strange output > say Foo::Bar::{'&zape'}; # compiles - executes - does nothing useful - > same strange output > #say Foo::Bar::('&zape'); # does not compile > > # -> ;; $_? is raw { #`(Block|62717656) ... } > # what does this output mean? > > say "end"; # prints 'end' > > -- > rahogaboom > -- JJ