sub genRotar { my( $pos, @vals )= ( 0, @_ ); return sub { $pos= 0 if @vals <= $pos; $vals[$pos++] } } sub Rotar::TIESCALAR { shift; return bless genRotar( @_ ), 'Rotar'; } sub Rotar::FETCH { $_[0]->(); } my $rowcolor; tie $rowcolor, 'Rotar', '#FF0000', '#00FF00', '#0000FF';