#!/usr/bin/perl print "Content-type: text/html\n\n"; use strict; my $stanzas = 4; my $lines = 4; my $prose_file = "prose"; my $words_file = "termz"; # taken from /usr/share/dict/words my $debug = 0; my @words = load_words(); my @proses = load_prose(); my $poem = generate_poem(); my $poem_number = poem_number(); my $align = random_align(); my $align2 = random_align(); my $valign = random_valign(); print " \n \n \n Computer Generated Random Poetry\n \n \n \n \n \n \n \n
\n \n \n \n
\n
\n$poem
\n
\n
\n \n "; sub generate_poem { my $poem = "\n"; my $stanza_number = 1; while ($stanza_number <= $stanzas) { my $line_number = 1; while ($line_number <= $lines) { my $prose = $proses[rand(int(@proses))]; while ($prose =~ m/RAND/) { $prose =~ s/RAND/$words[rand(int(@words))]/; } $prose =~ s/\n//g; $prose =~ s/\'s//g; $prose = lc($prose); $poem .= "$prose\n"; $line_number++ } $poem .= "\n"; $stanza_number++; } return $poem; } sub load_prose { open(FILE, $prose_file); my @lines = ; close(FILE); return @lines; } sub load_words { open(FILE, $words_file); my @lines = ; close(FILE); return @lines; } sub poem_number { my $random_number = int(rand(9999999999)); return $random_number; } sub random_align { my @alignments = ("left", "center", "right"); return $alignments[rand(int(@alignments))]; } sub random_valign { my @alignments = ("top", "middle", "bottom"); return $alignments[rand(int(@alignments))]; }