#!/usr/bin/perl -w use IO::Socket; use Term::ANSIColor;use warnings;use strict; sub program{ our @nouns = ("queen ", "bee ", "seven ", "pokemon ", "pineapple ", "linux ", "bill gates ", "linus torvalds ", "tux ", "microsoft ", "windows vista ", "fedora "); our @verbs = ("going ", "comming ", "running ", "stopping ", "dying ", "sleeping ", "beginning ", "fighting ", "becoming ", "rushing "); our @adjectives = ("good ", "bad ", "ugly ", "cool ", "hot ", "flashy ", "dull ", "colorful ", "gray ", "blonde"); our @saying_array = {"initial","starting"}; my $size = scalar(@saying_array); my $koolNum = 3;if ($size < $koolNum){ pull_vals();}sub pull_vals{ my $index = rand (@nouns); my $a_noun = $nouns[$index]; my $index2 = rand (@verbs); my $a_verb = $verbs[$index2]; my $index3 = rand (@adjectives); my $a_adjective = $adjectives[$index3]; $saying_array[0] = $a_noun; $saying_array[1] = $a_verb; $saying_array[2] = $a_adjective; print @saying_array; print "\n";}my $l_port = 3000; my $port = shift|| $l_port; my $proto = getprotobyname('tcp'); socket(SERVER, PF_INET, SOCK_STREAM, $proto) or die "socket: $!"; setsockopt(SERVER, SOL_SOCKET, SO_REUSEADDR, 1) or die "setsock: $!"; my $paddr = sockaddr_in($port, INADDR_ANY); bind(SERVER, $paddr) or die "bind: $!"; listen(SERVER, SOMAXCONN) or die "listen: $!"; print color 'bold blue'; print "SERVER started on port $port "; print "\n";my $client_addr; while ($client_addr = accept(CLIENT, SERVER)){ pull_vals();print color 'red'; print CLIENT @saying_array; print SERVER @saying_array; print CLIENT "\n"; close CLIENT; }}sub main{ my $x = 0;if($x != 100){ $x++;program(); }}main();