Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

exactly 390 bytes

by Anonymous Monk
on Mar 22, 2004 at 17:25 UTC ( #338686=obfuscated: print w/ replies, xml ) Need Help??

s dducfirstde and s ici chr oct hex acdaciego xor s ror study diverge +and s l lleg and s fr foo do reverse foo xor s go dog chr reverse ord + srand hypergeom and s eselcfirstexeseeo if s e e ILwHChJwulrZrjqBkNA +sAoXVcFMopbloPRZAcwJMcAcR ogctmccXVNgNLoorWVPvJoPocohNPoaccoSRcQWMcqw +WAngtcugnAKocovocoKxSLdiocEocTJTMY obcTJEcTcZocccDBcbEjcoWRABvGZoYoVc +fAnaoooAQATJnbLcoCoHzuPyJQIaIWNLqSxsLwremix

2005-01-07 Janitored by Arunbear - replaced pre tags with code tags, to allow code extraction

Comment on exactly 390 bytes
Download Code
Re: exactly 390 bytes
by MidLifeXis (Prior) on Mar 22, 2004 at 18:13 UTC

    Other than looking like some of the spam I receive, nice job :)

Re: exactly 390 bytes
by muba (Priest) on Mar 22, 2004 at 18:34 UTC
    I dislike the large amount of warnings I get. It's nice to see no special characters are used, like " and $ and such.
Re: exactly 390 bytes
by flyingmoose (Priest) on Mar 23, 2004 at 02:06 UTC
    I Can't Believe It's Not Text! (excellent, and I have absolutely no idea how this works or what magic can be done with s here...)
Re: exactly 390 bytes
by mce (Curate) on Mar 23, 2004 at 08:07 UTC
    Cool, but it coredumps on 5.8.0.
    (but I guess it is more related to the perl version than to your code :-) ).
    On 5.6.1 it works OK.

    ---------------------------
    Dr. Mark Ceulemans
    Senior Consultant
    BMC, Belgium
Re: exactly 390 bytes
by Anonymous Monk on Mar 23, 2004 at 08:23 UTC

    Well, here's the start of the ripping apart of this cool piece of text. I don't currently have the time to reverse engineer the whole thing, I may come back to it later if nobody else does so first:

    s//ucfirst/e and s/c/ chr oct hex acdac/eg xor s/o/ study dive/eg and s/\n//g and s/r /oo do reverse / xor s/o do/chr reverse ord srand hyper/e and s/s/lcfirst/eee if s// ILwHChJwulrZrjqBkNAsAoXVcFMopbloPRZAcwJMcAcR ogctmccXVNgNLoorWVPvJoPocohNPoaccoSRcQWMcqwWAngtc ugnAKocovocoKxSLdiocEocTJTMYobcTJEcTcZocccDBcbEjc oWRABvGZoYoVcfAnaoooAQATJnbLcoCoHzuPyJQIaIWNLqSxs Lwr/x

      My /eee foo is weak. I have absolutely no clue what a /eee switch does on a regex. Here's what I've worked the whole thing down to and I don't understand how it works its magic. I know that /eee is on the perl purity test, but I'm still clueless :|

      $_ = " ILwHChJwulrZrjqBkNAsA1XV8FM1pbl1PRZA8wJM 8A8R1g8tm88XVNgNL11rWVPvJ1P181hNP1a881SR8QWM8qw WAngt8ugnAK181v181KxSLdi18E18TJTMY1b8TJE8T8Z188 8DB8bEj81WRABvGZ1Y1V8fAna111AQATJnbL81C1HzuPyJQ IaIWNLqSxsLwo^ reverse ILwHChJwulrZrjqBkNAsA1XV 8FM1pbl1PRZA8wJM8A8R1g8tm88XVNgNL11rWVPvJ1P181h NP1a881SR8QWM8qwWAngt8ugnAK181v181KxSLdi18E18TJ TMY1b8TJE8T8Z1888DB8bEj81WRABvGZ1Y1V8fAna111AQA TJnbL81C1HzuPyJQIaIWNLqSxsLwr"; s/\n//g; s/s/lcfirst/eee;
Re: exactly 390 bytes
by Anonymous Monk on Mar 23, 2004 at 15:55 UTC
    Here is a dumb hello world:
    s RRprint q qHelloX WorldY
    qR and s RXRchr oct oct ord BRe and s RYRchr oct oct oct oct ord MRe and eval
    
    From that everybody can construct their own alphabetic code.
      Pity it's anonymous.. This is nice.
Re: exactly 390 bytes
by ambrus (Abbot) on Mar 25, 2004 at 21:49 UTC

    And so great it does not use the length trick:

    s kdkchr oct hex hex hex hex length dbmopentutjavaisevilbutmarksegand s smschr hex hex length nooriginalideasegand eval for lc printmqqmbdujustmanothermduperlmhackerdnb

    Small change (to fit in an sms):

    s kdkchr oct hex hex hex hex length qr hypergeomopenclosehksegand s smschr hex hex length qr open cosegand eval for lc printmqqmbdujustmanothermduperlmhackerdnb

      Let me make it even shorter:

      s kdkchr oct oct hex cekegand s lmlchr hex hex hex elseg and eval for lc printmqqmbdujustmanothermduperlmhackerdnb

      Update: even a bit more shorter:

      s kdkchr oct oct hex cekegand s lmlchr oct hex ffflseg and eval for lc printmqqmbdujustmanothermduperlmhackerdnb

      And here's a list of ways of representing numbers in short code consisting of only lc letters and space:

      The list has been updated.

      -5 = log cos hex b -4 = log sin hex affff -3 = log cos ord c -2 = log cos ord f -1 = log sin ord t 0 = cos ord b 1 = length z 2 = log hex c 3 = length zzz 4 = log ord e 5 = log hex be 6 = oct ord uc e 7 = log hex aff 8 = oct ord l 9 = oct ord w 10 = hex a 11 = hex b 12 = hex c 13 = hex d 14 = hex e 15 = hex f 16 = hex hex a 17 = hex hex b 18 = hex hex c 19 = hex hex d 20 = hex hex e 21 = hex hex f 22 = hex hex hex a 23 = hex hex hex b 24 = hex hex hex c 25 = hex hex hex d 26 = oct oct hex fff 27 = oct hex hex hex f 28 = oct hex daa 29 = oct hex dff 30 = oct hex hex aa 31 = oct oct oct hex daaa 32 = oct hex fff 33 = hex hex hex f 34 = oct hex ffffffff 35 = hex hex hex hex b 36 = hex hex hex hex c 37 = oct oct hex daaa 38 = oct oct hex hex ee 39 = oct oct ord ord c 40 = oct ord hex dd 41 = oct hex caaa 42 = oct ord hex fff 43 = oct oct ord uc a 44 = oct ord hex ffff 45 = oct hex daaa 46 = oct hex hex ee 47 = oct ord ord c 48 = ord cos ord k 49 = ord ord o 50 = ord hex dd 51 = ord hex eaa 52 = ord hex fff 53 = oct ord uc a 54 = ord hex ffff 55 = ord ord uc n 56 = ord ord uc p 57 = ord ord c 58 = oct ord uc h 59 = oct ord uc i 60 = oct ord uc j 61 = oct ord uc k 62 = oct ord uc l 63 = oct ord uc mz 64 = oct ord d 65 = ord uc a 66 = ord uc b 67 = ord uc c 68 = ord uc d 69 = ord uc e 70 = ord uc f 71 = ord uc g 72 = ord uc h 73 = ord uc i 74 = ord uc j 75 = ord uc k 76 = ord uc l 77 = ord uc mz 78 = ord uc n 79 = ord uc o 80 = ord uc p 81 = ord uc qz 82 = ord uc r 83 = ord uc sz 84 = ord uc t 85 = ord uc u 86 = ord uc v 87 = ord uc w 88 = ord uc x 89 = ord uc yz 90 = ord uc z 91 = oct oct hex cd 92 = oct oct hex ce 93 = oct oct hex cf 94 = oct hex hex dff 95 = oct hex ord uc yz 96 = hex oct ord uc j 97 = ord a 98 = ord b 99 = ord c 100 = ord d 101 = ord e 102 = ord f 103 = ord g 104 = ord h 105 = ord i 106 = ord j 107 = ord k 108 = ord l 109 = ord mz 110 = ord n 111 = ord o 112 = ord p 113 = ord qz 114 = ord r 115 = ord sz 116 = ord t 117 = ord u 118 = ord v 119 = ord w 120 = ord x 121 = ord yz 122 = ord z 123 = oct hex ad 124 = oct hex ae 125 = oct hex af 126 = oct oct hex ord h 127 = oct oct hex ord i 128 = hex ord uc p

      Update: oh, I forgot those ending with ord plus a letter and ord uc plus a letter, I'll check for those later. -- update: done now

      I, however, did check the ones with length qr jzzz...zzzj which could help as qr increases the number with 9 for only 5 char's cost, but it turns out that it's never the shortest.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: obfuscated [id://338686]
Approved by jweed
Front-paged by jdporter
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (4)
As of 2014-08-31 07:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (294 votes), past polls