[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#666758: ITP: librole-tiny-perl -- minimalist role composition Perl module

Package: wnpp
Owner: Alessandro Ghedini <ghedo@debian.org>
Severity: wishlist
X-Debbugs-CC: debian-devel@lists.debian.org,debian-perl@lists.debian.org

* Package name    : librole-tiny-perl
  Version         : 1.000000
  Upstream Author : Matt S. Trout <mst@shadowcat.co.uk>
* URL             : http://search.cpan.org/dist/Role-Tiny/
* License         : Artistic or GPL-1+
  Programming Lang: Perl
  Description     : minimalist role composition Perl module

Role::Tiny is a Perl module to do minimalist role composition. Role composition
can be thought of as much more clever and meaningful multiple inheritance.

The basics of this implementation of roles is:
 * If a method is already defined on a class, that method will not be composed
   in from the role.
 * If a method that the role "requires" to be implemented is not implemented,
   role application will fail loudly.

Unlike Class::C3, where the last class inherited from "wins," role composition
is the other way around, where first wins. In a more complete system (see
Moose) roles are checked to see if they clash. The goal of this is to be much
simpler, hence disallowing composition of multiple roles at once.

Reply to: