#!/usr/bin/env perl use 5.018; use warnings; use open qw{:std :encoding(UTF-8)}; use Time::HiRes 'usleep'; { my @code_points = qw{ 1f55b 1f567 1f550 1f55c 1f551 1f55d 1f552 1f55e 1f553 1f55f 1f554 1f560 1f555 1f561 1f556 1f562 1f557 1f563 1f558 1f564 1f559 1f565 1f55a 1f566 }; my @chars = map chr hex, @code_points; my $total = @chars; my $index = $total; for (1 .. 50) { local $| = 1; $index %= $total; print "\b\b", $chars[$index++]; usleep 250_000; } print "\n"; } { my @code_points = qw{ 1f311 1f312 1f313 1f314 1f315 1f316 1f317 1f318 }; my @chars = map chr hex, @code_points; my $total = @chars; my $index = $total; for (1 .. 25) { local $| = 1; $index %= $total; print "\b\b", $chars[$index++]; usleep 500_000; } print "\n"; }