worley@compass.com (Dale Worley) (02/13/91)
If the letters and digits are missing from your keyboard, you can use
the following skeleton to execute Perl programs:
$= = $-;
$: = $=++;
$: .= $=++;
$: .= $=++;
$: .= $=++;
$: .= $=++;
$: .= $=++;
$: .= $=++;
$: .= $=++;
$: .= $=++;
$: .= $=++;
$] =~ /^...(.)/;
$_ = $+;
$~ = $_;
$, = $_;
$: .= $_;
$_++;
$: .= $_;
$_++;
$, .= $_;
$: .= $_;
$_++;
$: .= $_;
$_++;
$\ = $_;
$: .= $_;
$_++;
$: .= $_;
$_++;
$" = $_;
$_++; $_++; $_++; $_++;
$, .= $_;
$_++;
$~ .= $_;
$_++; $_++; $_++; $_++;
$, = $_ . $,;
$_++; $_++;
$: = $_ . '/?@#,%^&*()_+|~:</' . $: . '/';
$_++;
$; = $_;
$_++;
$: = $_ . $:;
$_++; $_++;
$~ = $\ . $_ . $~;
$] =~ /^.(.)/;
$; = "-$\\ '\$$; = \"" . <<'['
*?*#&)&:*%#?#*%_*^*,*%#?&@&:&<*%&(&^*##?^?&^*#&|#?&(&@&,&+&^*##|?_#*,+
[
. "\"; \$$; =~ $;/\\$;//$\"; \$$; =~ $:; $~ $,(\"$+*\", \$$;);'";
$] =~ /: (....)/;
$= = ++$-;
$-++;
`$+ $; $=>&$-`;
You have to translate your program into hex (using the characters
?@#,%^&*()_+|~:< ), and replace the long line near the end with it.
(You can break the program up into lines if you wish.) The following
fragment will do the translation for you:
$a = "print 'Just another Perl hacker,\n';";
$a = unpack("H*", $a);
$a =~ tr/0123456789abcdef/?@#,%^&*()_+|~:</;
print $a, "\n";
Dale
Dale Worley Compass, Inc. worley@compass.com
--
The notion of a "record" is an obsolete remnant of the days of the
80-column card. -- Dennis M. Ritchiekstock@isfrance.encore.fr (Kevin Stock,MIS,346,) (02/14/91)
Dale Worley (obviously over the brink of insanity) writes: > If the letters and digits are missing from your keyboard, you can use > the following skeleton to execute Perl programs: Yes, but do you explain to your sysadm that you want *?&^*#&| created as a link to perl? > Dale Worley Compass, Inc. worley@compass.com Incidentally, this showed up a bug in perl on one of my platforms. Unpack just returned its format string. This is at patch level 44. Is this a known problem? ,---------------. ,-+-------------. | Kevin Stock | | E N C O R E | | | `-------------+-' kstock@gouldfr.encore.fr `---------------' kstock@gouldfr.UUCP Any opinions expressed are my own, but may be reproduced under the terms of the GNU licence. See the file COPYING at the end of this posting. :-)