Hi, I'm working with roles where the mixing-in classes and roles need to have some mixin-specific notion of equality. So I have an Equality role that can also be mixed in as needed:
role Equality { method equal(Equality:D) of Bool:D {...} } To make using the role easier I've created an infix operator "=/=". To give the infix operator predcitable semantics I need to specify the precedence and the associativity with traits: sub infix:<=/=>(Equality:D \x, Equality:D \y) of Bool:D is equiv(&infix:<==>) is assoc<chain> is export { x.equal(y) } Is there some way to combine traits to a more succinct trait? Something like: subset Equivalence of Routine where {magic}...; sub infix:<=/=>(Equality:D \x, Equality:D \y) of Bool:D is equivalence is export; Would a custom version of the trait_mod:<is> routine do the trick?