Thanks! Both of these are workable, but the ^mro (method resolution order, I presume) is closer to what I wanted just now:
my $stringy = 'abc'; say $stringy.^name; # Str say $stringy.^parents(:all); # ((Cool) (Any) (Mu)) say $stringy.^mro; # ((Str) (Cool) (Any) (Mu)) On Sun, Jul 29, 2018 at 10:42 AM, Laurent Rosenfeld <laurent.rosenf...@googlemail.com> wrote: > Hi, > > Try this: > > > my $stringy = "abc"; > say $stringy.^parents(:all); > > This should display: > > ((Cool) (Any) (Mu)) > > Cheers, > Laurent. > > 2018-07-29 19:27 GMT+02:00 Joseph Brenner <doom...@gmail.com>: >> >> If you look at the type diagram: >> >> https://docs.perl6.org/type/Str#___top >> >> You can see that: >> Str is Cool is Any is Mu >> >> But if you use the ^parents method on a string, you don't get >> "Cool", instead you get "()": >> >> my $stringy = "abc"; >> say $stringy.^name; # Str >> say $stringy.^parents; # () >> >> say (Str).^parents; # () >> >> So what exactly does ^parents tell you about? >> Is there some other method you could use to trace the chain >> of ancestors upwards? > >