On Mon, 17 Apr 2017 09:53:28 -0700, mt1...@gmail.com wrote: > Since I've installed perl6 version 2017.03-234-g0ebdaa4 built on MoarVM > version 2017.03-128-gc9ab59c, several modules are experiencing failures > when using the following construct (golfed down)(I am sure that the > module loads) > > > my $m = 'somemodule'; > require ::($m); > my $o = ::($m).new; > > > However, in a simple setup it works fine. I could manage to rewrite > things in such a way that errors disappear, but I do not understand it. > A question is 'Are the symbols loaded lexically in such a way that it is > not possible to instantiate the class in another method?' > > A remaining bug on windows(with latest rakudostar) shows the error; > > Failed to load Config::TOML; > Lexical with name '&from-toml' does not exist in this frame > > when using something like the following > > my $m = 'Config::TOML'; > require ::($m) <&from-toml>; > > see also > https://ci.appveyor.com/project/MARTIMM/config-datalang-refine/branch/master > > > Other things I've seen before are; not able to find the class name > symbol when I want to instatiate the class, or the .^name is shorter > than the real class name should be, which accounts for the first error. > > > Regards, > Marcel > >
Can't reproduce either of the issues you describe. Do you have a piece of code we can run that repos the problem? Also, have you seen the lexical require Upgrade Notification? http://rakudo.org/2017/03/18/lexical-require-upgrade-info/ my $m = 'Test'; require ::($m) <&ok>; ok 1, 1; # OUTPUT: ok 1 - 1 my $m = 'DBIish'; require ::($m); my $o = ::($m).new; dd $o; # OUTPUT: DBIish $o = DBIish.new