http://www.perlmonks.org?node_id=249452

I was talking to our admin the other day and I looked into my boss’s office and noticed that his keys were gone but his notebook was on his desk which usually means he is either at lunch or gone for the day.
Since it was well after lunch-time I turned to our admin and said “so Mark is gone for the day?” and she was amazed and wanted to know how I knew that. So I started explaining the relationship of Mark’s notebook and keys being present or not to his location and I started thinking since I am just beggining to learn, how would I do this in perl? I ended up coming up with the following silly piece of code.

DrManhattan asked my why I used local $keys; and I pointed out that the idea was to determine if his keys or notebook were present…or local ;-) Thanks to DrManhattan for his assistance in making this actually run

#! /usr/bin/perl use Time::Object; my $time = localtime; my $boss="Mark"; local $keys; local $notebook; my $lunch = 1 if ($time->hour >12 and $time->hour <13); if ($keys and $notebook) { print "$boss is in the building but likely in the restroom \n" +; } elsif ($keys and !$notebook) { print "$boss is likely in the building and in a meeting n"; } elsif ($notebook and !$keys) { if ($lunch) { print "$boss is likely gone for lunch \n"; } else { print "$boss is likely gone for the day \n"; } } elsif (!$keys and !$notebook) { print "$boss is likely at an off-site meeting and may not retu +rn \n"; } else { print "I really don't know where $boss is as he appears to be +once again defying all logic \n"; }