I recently wrote a module that falls into the date/time area and would
appreciate some help nameing it. Currently it's called Calendar::Simple
but I'd appreciate any comments and improvements.

Here's the POD

NAME

Calendar::Simple - Perl extension to create simple calendars

SYNOPSIS

  use Calendar::Simple;

  my @curr      = calendar;          # get current month
  my @this_sept = calendar(9);       # get 9th month of current year
  my @sept_2002 = calendar(9, 2002); # get 9th month of 2002
  my @monday    = calendar(9, 2002, 1); # get 9th month of 2002,
                                          weeks start on Monday


DESCRIPTION

A very simple module that exports one functions called calendar. This
function returns a data structure representing the dates in a month. The
data structure returned is an array of array references. The first level
array represents the weeks in the month. The second level array contains
the actual days. By default, each week starts on a Sunday and the value
in the array is the date of that day. Any days at the beginning of the
first week or the end of the last week that are from the previous or
next month have the value undef.

If the month or year parameters are omitted then the current month or
year are assumed.

A third, optional parameter, start_day, allows you to set the day each
week starts with, with the same values as localtime sets for wday
(namely, 0 for Sunday, 1 for Monday and so on).

A simple cal replacement would therefore look like this:

  #!/usr/bin/perl -w

  use strict;
  use Calendar::Simple;

  my @months = qw(January February March April May June July August
                  September October November December);

  my $mon = shift || (localtime)[4] + 1;
  my $yr = shift || ((localtime)[5] + 1900);

  my @month = calendar($mon, $yr);

  print "\n$months[$mon -1] $yr\n\n";
  print "Su Mo Tu We Th Fr Sa\n";
  foreach (@month) {
    print map { $_ ? sprintf "%2d ", $_ : '   ' } @$_;
    print "\n";
  }


EXPORT

calendar

AUTHOR

Dave Cross <[EMAIL PROTECTED]>

With thanks to Paul Mison <[EMAIL PROTECTED]> for the start day patch.

SEE ALSO

perl, perldoc -f localtime


-- 
  "Don't you boys know any _nice_ songs?"

Reply via email to