#!/usr/bin/perl -w use strict; use Algorithm::Permute; $| = 1; my @spinner = ('|', '/', '-', '\\'); my $bigscale = 100_000; my $scale = 100; my $index = 0; my $draw_max = 9; my $draw_min = 1; my $to_draw = 6; my (%seen); my (@res); my $p = new Algorithm::Permute([$draw_min .. $draw_max]); while (@res = $p->next) { my $st = join(', ', sort(@res[0 .. ($to_draw - 1)])); $seen{$st} = 1; print $spinner[($index++ / $scale) % 4], "\b"; print '.' unless ($index % $bigscale); } print join "\n", sort keys %seen;