Jon (>), Jonasthan (>>): >> If we declared, for example: >> >> role A::B {}; >> >> Then what should a reference to A be here? At the moment, Rakudo treats it >> as a post-declared listop, however I suspect we should be doing something a >> bit smarter? If so, what should the answer to ~A.WHAT be? > > I'd go with one of two possibilities: > > * Don't allow the declaration of A::B unless A has already been declared. > [...]
Please don't go with this former alternative. In a project even of moderate size like Druid, many packages of type A::B are declared before the corresponding A package is, for perfectly legitimate reasons. > * A should be treated as a post-declared package. Whatever this means, it sounds preferable. :) // Carl