http://www.perlmonks.org?node_id=998078


in reply to Progressive JAPH

Very cool.

It took much longer the second time I ran it. Well, users like features and I'm a user. So if you feel like adding a feature, I suggest having a timeout which makes the correct letters get selected quicker.

Replies are listed 'Best First'.
Re^2: Progressive JAPH
by Athanasius (Archbishop) on Oct 10, 2012 at 06:48 UTC

    Special order for ajam:  ;-)

    #! perl -w use strict;use Time::HiRes"usleep";sub o ($){hex$_[0]}my@O=(q,4a75737420616E6f74, .qq;686572205065726c206861636B65722c;)=~ m,(..),xg;my(@o,@O0);sub O0{sprintf"%x", splice(@{$_[0]},int(rand(@{$_[0]})),1)}$ o[$_]=[040..0b1111110],$O0[$_]=O0($o[$_] )for-0..$#O;my$o0=+oO(\@O0,\@O);o0($o0,@ O0);O(\@O0,\@o,\@O),o0($o0,@O0)while$o0= &oO(\@O0,\@O)<@O;sub O{my($O,$o,$O0)=@_; for(0..$#$O){$O->[$_]=O0($o->[$_])if(o$O ->[$_]!=+o$O0->[$_])}}sub o0{--$|;my$oo= shift;print"\r",join('',map{chr(o($_))}@ _);usleep(0b1100100**02*(4+70*$oo/031))} sub oO{my($Oo,$O,$o)=(0,@_);for(0..$#$O) {++$Oo if o($O->[$_])==o($o->[$_])}$Oo;}

    Enjoy!

    Athanasius <°(((><contra mundum

      Thanks!