Stuff with the Perl Foundation. A couple of patches in the Perl core. A few CPAN modules. That about sums it up.
chromatic has Class::Roles on the CPAN. This is an attempt to implement traits in Perl. I think it's a great start,but there are a few features of traits that it doesn't implement yet. I've been thinking about the problem and I think I've got it licked. When all of the traits (roles) are used, a dynamically created interface is generated and it validates the integrity of the flattened class. It's a bit more complicated than it sounds, but I'll send chromatic some code when I'm done -- if it works.
The Wait (Score:1)
I'm waiting to see what shakes out of A12 before I do much more work on it. Very few people really understand the point of roles; I hope that Larry will explain it far better than I've been able to do.
Re:The Wait (Score:2)
I don't blame you. It looks like there's a lot of potential there, but how it integrates into Perl 6 will be interesting.
I just finished an alpha version of Class::Trait and I'm writing the docs now. I don't have a tarball uploaded, but the interface looks like this (borrowing heavily from your examples):
Re:The Wait (Score:2)
I forgot to mention that since I don't know how Perl 6 roles are to be implemented, my design goals were driven by my understanding of the original traits document. That's one of the reasons why I call them "traits" instead of "roles". I've thought about uploading this to the CPAN, but I have two concerns. First, I don't want to cause potential confusion when Perl 6 comes out. Second, since there are already beginning implementations of roles, I don't necessarily want to provide competing modules unless