Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

The Nymph's Reply to the Shepherd

by frost_knight (Novice)
on Nov 06, 2012 at 17:10 UTC ( #1002528=poem: print w/ replies, xml ) Need Help??

The college I work for recently published a small poetry journal with the theme of romantic love. Submissions had to translate an exisiting poem from English into another language, or vice versa. I submitted this and it was enthusiastically accepted.

Some lines are a hair over 80 columns. Fitting onto a single page was the highest priority for the publication, so I used less whitespace and more columns than I normally would for production code. The code will run if executed.

-----------------------

#!/usr/bin/env perl # filename: nymphs_reply.pl # description: the nymph's reply to the shepherd # created: before 1599, sir walter raleigh (wraleigh) # modified: 02.14.2012, william fielder (wfielder) # bug tracker: (cmarlowe) successful exit conditions will never be met # bug closed: (wraliegh) nofix, working as designed # === pragmas and globals === # use File::Copy; $world_and_love = 1000; # vast untold +eons $shepherds_tongue = 0; # what a guy $rocks = 300; # warm, degree +s kelvin $philomel = 100; # iq, smart bi +rd $youth = 0; # wasted on th +e young $rivers = "with more than flinty rage"; # apologies to + thom $folly = "the riper should by time decease"; # apologies to + will $season = "rotten apple from the hoard"; # apologies to + geoff @items = qw(gowns, shoes, roses, cap, kirtle, posies); @accessories = qw(belt of straw, ivy buds, coral clasps, amber studs); @joys = qw(date, age, need); # === subroutines === # sub TickTock { $time = localtime(); if (-e "/field/flocks" ) { move("/field/flocks", "/field/fold") || die("cannnot move, $!\n +"); } print("\n$time\n\n"); } # === main === # if (($world_and_love <= 8) && ($shepherds_tongue)) { move("/me/pretty_pleasures", "/thee/thy_love") || die("cannot move, + $!\n"); exit 0; } TickTock(); while (($rivers =~ m/rage/) && ($rocks >= 200)) { $rocks -= 128; $philomel -= 32; push(@the_rest, qw(cares)) || warn("cares: complain\n\n"); } undef($flowers); $wanton_fields = "wayward winter reckoning"; @sorrows_fall = @fancys_spring = ("honey tongue", "heart of gall"); if (($folly =~ m/ripe/) && ($season =~ m/rotten/)) { foreach $item (@items) { undef($item); } } unless (@accessories) { move("/me/to_come", "/thee/thy_love") || die("cannot move, $!\n"); exit 0; } if (($youth) && (-e "/thee/thy_love")) { unless(@joys) { move("/me/delights", "/thee/thy_love") || die("cannot move, $!\ +n"); exit 0; } } exit 1; # eof

Comment on The Nymph's Reply to the Shepherd
Download Code
Re: The Nymph's Reply to the Shepherd
by davies (Vicar) on Nov 07, 2012 at 11:30 UTC

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (7)
As of 2014-07-26 02:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (175 votes), past polls