Hi,

I would like to ask for help in understanding difference between this code:

   use v6;

   role X {
       multi method xyz(Any $a) {say "Class X"}
    }

    class Y does X {
        multi method xyz(Any $a) {say "Class Y"}
    }

    say Y.new.xyz(1);

    $ perl6 tst.pl
     Ambiguous call to 'xyz'; these signatures all match:
     :(Y: Any $a, *%_)
     :(Y: Any $a, *%_)
      in block  at tst.pl:26

And this code:
   use v6;

   class X {
       multi method xyz(Any $a) {say "Class X"}
    }

    class Y is X {
        multi method xyz(Any $a) {say "Class Y"}
    }

    say Y.new.xyz(1);

    $ perl6 tst.pl
    Class Y
    True

It is hard to google such common words like is and does :)

-- 
Pozdrawiam

Kamil Kułaga

Reply via email to