Second, and it took me a second to notice this, but he’s checking the Attribute MetaObject’s does().

Yeah, and that's a user interface question. I could argue that interpretation both ways, depending on how I felt about metacircularity.

There may not be a Role that is equivalent to that type.

I've said this before, but I'll write it again to clarify for everyone else:

Any declaration of a type which does not imply the existence of a role is broken, in my opinion. A system is allomorphic only if every named class or type implies a role.

With that said, a system doesn't have to be allomorphic to be useful, but a fully allomorphic system has the fewest possible edge cases and the greatest possible flexibility, and that's pretty much exactly what we're after with roles.

(I don't have a formalism to specify the relationship of anonymous classes and anonymous roles because I haven't figured out a good way to specify the identity of an anonymous type. There's an easy and obvious solution but I haven't proven to my satisfaction that it's watertight.)


In reply to Re^4: Introspection of Moose/Mouse attributes fails to find native trait with `does` by chromatic
in thread Introspection of Moose/Mouse attributes fails to find native trait with `does` by Your Mother

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.