This section has been unusually silent: no new obfuscated code for seventy-seven days. It is thus fitting that we contemplate together the words of the silent monk who demonstrated us the virtue of patience.

use warnings; use strict; use Math::BigInt; our $scripture = q{ The First Letter of Erudil to the Monasterians
1 Erudil, a hacker of Perl, To Vroom, the saints, and all the dwellers of the Monastery: 2 Mercy, peace and love be yours in abundance. 3 It is now a little more than two years since I joined this community of believers in Perl, and my appreciation of this place and its custodians and members continues to grow. 4 Brothers and sisters, I beseech you to continue fighting the good fight, showing patience and understanding to those who come to the gates of our blessed Monastery, bereft of clues and ignorant of our ways. 5 Do not rebuke them with harsh words such as "RTFM", but rather lead them gently - with URLs - so that they may learn wisdom. 6 Suffer the newbies to come unto us, instructing them of the many truths contained within the good book. 7 For who among us has never been in a state of error or ignorance? 8 Consider carefully the following: 9 Blessed are they that "use strict;", for their typos shall be caught before trouble arises. 10 Blessed are they that use "-w", for Perl itself shall show them the error of their ways. 11 Blessed are they that "use CGI;", for their parameters shall be passed without error. 12 Blessed are they that use CPAN, for exceedingly large shall be the number of wheels that they do not re-invent.
13 Blessed are they that understand regexs, for they shall waste no time trying to parse HTML. 14 Blessed are you, when "they" insult you and ridicule you, and speak all manner of evil against you for using Perl, for great will be your reward when your project is finished in less time, and with less effort. 15 If there are those who refuse to accept our wonderful message, do not allow them to draw you into a fruitless flame war, and thereby bring disrepute upon yourselves and our Monastery. 16 Remember well: "What should it profit a man, if he should win a flame war, yet lose his cool?". 17 If this is an area of weakness for you, as it is for me, then I would encourage you, my fellow Monasterians, to consider a vow of silence as I have done, speaking rarely and with words carefully chosen to edify and inform. 18 Brothers and sisters, I commend you once again for restoring my faith in the idea of a viable, on-line community. And now, 19 May your syntax always be correct and your algorithms efficient. 20 May your references point to good data, and may you grow in the knowledge and understanding of our beloved language, Perl. 21 Amen and amen.
}; my $r = Math::BigInt->bzero; for (split /^/, $scripture) { my($k, $n, $b, $v, $h, $p) = (-1, (0)x5); for (unpack "(A)*", $_) { if (ord) { if ($p) { $n++; eval { if ($p % 2) { $b *= $n / ++$k; } else { $v += $b; $b *= $n / ($n - $k); } } or $b = $p % 2; } $p = 0; } else { $p++; } } eval { $r *= $b * ($n - $k) / ($k + 1); $r += $v; }; } while ($r) { print+(" ", "a" .. "z")[($r->bdiv(23))[1]]; } print "\n"; __END__

Update 2010-12-19: tried to fix motivational sentence at the beginning to be more meaningful. Not sure it worked.


In reply to News of current disasters hidden in 1st Monasterians by ambrus

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.