"Black Perl" is a
code poem written using the
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Though Perl is not officially an acronym, there are various backronyms in use, including "Practical Extraction and Reporting Language".
Perl was developed ...
programming language
A programming language is a system of notation for writing computer programs.
Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
. It was posted anonymously to
Usenet
Usenet (), a portmanteau of User's Network, is a worldwide distributed discussion system available on computers. It was developed from the general-purpose UUCP, Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Elli ...
on April 1, 1990,
and is popular among Perl programmers as a piece of
Perl poetry. Written in Perl 3, the poem is able to be
executed
Capital punishment, also known as the death penalty and formerly called judicial homicide, is the state-sanctioned killing of a person as punishment for actual or supposed misconduct. The sentence (law), sentence ordering that an offender b ...
as a program.
"Black Perl" has been discussed in several scholarly works, and is considered an example of
generative literature, a genre of
electronic literature
Electronic literature or digital literature is a genre of literature where digital capabilities such as interactivity, multimodality or Generative literature, algorithmic text generation are used aesthetically. Works of electronic literature ar ...
.
Attribution
When posted to the
comp.lang.perl
newsgroup the poem was attributed to "a person who wishes to remain anonymous".
Sharon Rauenzahn (
née
The birth name is the name of the person given upon their birth. The term may be applied to the surname, the given name or to the entire name. Where births are required to be officially registered, the entire name entered onto a births registe ...
Hopkins), another Perl poet, has been suspected to be the author but has since denied the claim.
Result of program execution
When executed, "Black Perl" exits on line one, upon reaching the functio
exit The remaining lines are parsed by the Perl interpreter but never actually executed. The program produces no output.
Though it will not parse under
Perl 5, multiple independent updates to "Black Perl" to make it parsable in Perl 5 have been published.
"Black Perl"
BEFOREHAND: close door, each window & exit; wait until time.
open spellbook, study, read (scan, select, tell us);
write it, print the hex while each watches,
reverse its length, write again;
kill spiders, pop them, chop, split, kill them.
unlink arms, shift, wait & listen (listening, wait),
sort the flock (then, warn the "goats" & kill the "sheep");
kill them, dump qualms, shift moralities,
values aside, each one;
die sheep! die to reverse the system
you accept (reject, respect);
next step,
kill the next sacrifice, each sacrifice,
wait, redo ritual until "all the spirits are pleased";
do it ("as they say").
do it(*everyone***must***participate***in***forbidden**s*e*x*).
return last victim; package body;
exit crypt (time, times & "half a time") & close it,
select (quickly) & warn your next victim;
AFTERWORDS: tell nobody.
wait, wait until time;
wait until next year, next decade;
sleep, sleep, die yourself,
die at last
See also
*
Digital poetry
*
PerlMonks
References
{{Reflist
American poems
Perl
1990 poems
1990s electronic literature works