#!/usr/bin/perl split "", (('P'^'U'^'O').('I'^'D'^'x').('X'^'r'^'Y') .('R'^'R'^'t').('w'^'y'^'.').('k'^'F'^'L').('Y'^ 'G' ^'p').('l'^'I'^'J').('R'^'R'^'t').('l'^'T'^'P').('l' ^'F'^'O').('m'^'N'^'Q').('w'^'y'^'.').('e'^'r'^'G'). ('l'^'F'^'O').('m'^'N'^'Q').('j'^'['^']').('w'^'y' ^ '.').('l'^'T'^'P').('k'^'F'^'L').('R'^'B'^'s').('s'^ 'H'^'P').('l'^'F'^'O').('m'^'N'^'Q').('z'^'='^'k')); _:{print"\ec";unshift@_,pop@_;print" "x31 ."^";print "\n"." "x(30-$_).$_[$_]." "." "x($_+$_).$_[$_] for 0 .. @_-1;usleep(250000);redo _}use Time::HiRes usleep

Replies are listed 'Best First'.
Re: ('Japh'^'Chars'^'Concept')
by pboin (Deacon) on May 16, 2005 at 14:08 UTC

    I think I'm with you, (well done by the way), but I'm a little lost by the _: just after the split. Is the underscore functioning as a label at that point? I think so, but I've not seen that before.

    Anyone care to enlighten me on what advantage there is to this kind of eternal loop versus others? (Maybe it just has higher ob-fu karma?)

      I think I'm with you, (well done by the way), but I'm a little lost by the _: just after the split. Is the underscore functioning as a label at that point? I think so, but I've not seen that before.
      Yes, it is a label. (If you don't figure it out when you see it, the redo should tip you off.) The underscore is considered to be a word character by most of Perl, so it can be used in places where most other punctuation cannot. For instance, a single underscore is also a valid subroutine name.