Math::NumSeq is a base class for number sequences. Sequence objects can iterate through the values, and some sequences have random access and predicate. It's a touch rough yet.
The idea is to generate things like squares or primes in a generic way. Some sequences, like squares, are so easy there's no need for this except for the genericness. Other sequences are trickier and an iterator is a good way to go through the values.
# only a base class, use one of the actual classes such as
my $seq = Math::NumSeq::Squares->new;
my ($i, $value) = $seq->next;