Acme-Partitioner
view release on metacpan or search on metacpan
lib/Acme/Partitioner.pm view on Meta::CPAN
use Acme::Partitioner;
my $p = Acme::Partitioner->using(@states);
my $partitioner =
$p->once_by(sub { $dfa->is_accepting($_) })
->then_by(sub {
join " ", map { $p->partition_of($_) }
$dfa->transitions_from($_)
});
while ($partitioning->refine) {
say "Still partitioning, got "
. $p->size . " partitions so far";
}
=head1 DESCRIPTION
This module provides a simple interface to partition items of a set
into smaller sets based on criteria supplied by the caller. One step
in the refinement process extracts keys from the elements and groups
elements based on all of them. Criteria can be based on assignments
to partitions based on previous refinements, in which case multiple
( run in 0.770 second using v1.01-cache-2.11-cpan-483215c6ad5 )