Acme-ESP
view release on metacpan or search on metacpan
sub oO
{
@_= map {
my $i;
eval{%$_||1}?(!%$_?():( $i= $_, join ". ", map
"$_: $$i{$_}", map substr("m;V",0,length) ^ $_, sort map
$_ ^ substr("m;V",0,length), keys %$i ) . "." ) :
eval{1+@$_}?(!@$_?(): join( "; ", @$_ ) ) : $_
} @_;
my( $thought )= !@_ ? undef : join " ... ", @_;
return bless \$thought, 'Acme::ESP::Scanner';
}
sub O'o { [ shift,oO( @_ ) ]->[!$[] }
package Acme::ESP::Scanner;
use overload(
'.' => \&scan,
nomethod => \&explode,
);
my $secret= '';
my( $p2, $rc, $f, $p3 )=
unpack "L4", unpack "P16", pack "L", $mind;
if( $openMind & $f ) {
my( $pv, $cur, $siz, $iv )=
unpack $fmt, unpack "P32", pack "L", $p2;
$pv= $p3
if $fmt =~ /^x/;
$secret= unpack "P$iv", pack "L", $pv-$iv;
}
bless $scanner, 'Acme::ESP';
my $thought= $$scanner;
if( defined $thought ) {
# It is surprising how hard it can be to clear your mind.
# It'd be nice to do this less destructively.
my $surface= "$$mind";
$$mind= undef;
$$mind= $thought . $surface;
substr( $$mind, 0, length($thought), "" );
}
return $secret;
( run in 0.619 second using v1.01-cache-2.11-cpan-de7293f3b23 )