On 17-04-17 19:12, Zoffix Znet via RT wrote:

thanks for the link, I will look into it.

The code for which the windows implementation fails but not on linux, can be found here;

https://github.com/MARTIMM/config-datalang-refine/blob/master/lib/Config/DataLang/Refine.pm6

the requires are at line 57 and 64
and the error is thrown at line 193 where the function is used.

thanks again,
Marcel

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

Reply via email to