The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Date::ManipX::Almanac::Lang::english - English support for Date::ManipX::Almanac

SYNOPSIS

The user does not directly interface with this module.

DESCRIPTION

This module provides English-language support for parsing almanac events.

ASTRONOMICAL BODIES

The following astronomical bodies are recognized:

 the sun
 the moon
 mercury
 venus
 mars
 jupiter
 saturn
 uranus
 neptune

The word 'the' is optional. So is the word 'when' before the entire body name string; that is, 'when the sun' but not 'the when sun'.

ALMANAC EVENTS

This section describes the events that this class provides. Descriptions are in terms of the superclass' documentation, and so will look a bit redundant in English.

Incidental words like 'the' and 'of' are supported where the author found them natural and bothered to allow for them, but do (or at least should) not affect the parse.

For the purpose of discussion, events are divided into two classes. General Events are those that apply to any astronomical body, and which therefore require the specification of the body they apply to. Specific Events only apply to one body, and therefore do not require the naming of a specific body.

General Events

The following general events should be recognized by this class:

Culminates

This is defined as the moment when the body appears highest in the sky. This module recognizes

 culminates
 the culmination of
 is the highest

The words 'is', 'the', and 'of' are optional. So is the word 'at' before the name of the event.

Rise

This is defined as the moment when the upper limb of the body appears above the horizon, after correcting for atmospheric refraction. This module recognizes

 rise
 rises
 the rising of
 is up

The words 'the', 'of', and 'is' are optional. So is the word 'at' before the name of the event.

Set

This is defined as the moment when the upper limb of the body disappears below the horizon, after correcting for atmospheric refraction. This module recognizes

 set
 sets
 the setting of
 is down

The words 'the', 'of', and 'is' are optional. So is the word 'at' before the name of the event.

Specific Events

The following specific events should be recognized by any subclass:

Phases of the Moon
 the new moon
 the first quarter moon
 the full moon
 the last quarter moon

This implies the Moon. It computes the first occurrence of the specified phase on or after the specified date.

The words 'the' and 'moon' are optional. So is the word 'at' before the name of the event.

Solar quarters
 the december solstice
 the march equinox
 the fall equinox
 the june solstice
 the september equinox
 the spring equinox
 the summer equinox
 the vernal equinox
 the winter solstice

This implies the Sun. It computes the first occurrence of the specified quarter after the specified date. Note that the time specified by the seasonal names differs between Northern and Southern Hemispheres.

The word 'the' is optional. So is the word 'at' before the name of the event.

twilight
 begin twilight
 the beginning of twilight
 twilight begins
 morning twilight
 end twilight
 the ending of twilight
 twilight ends
 evening twilight

This implies the Sun, and specifies the time the center of the Sun passes above ('begin') or below ('end') the twilight setting of the location object. This defaults to civil twilight (in the U.S. at least), or 6 degrees below the horizon.

One of the words 'civil', 'nautical', or 'astronomical' can optionally be inserted before 'twilight', specifying that the Sun be 6, 12, or 18 degrees below the horizon, respectively.

The words 'the' and 'of' are optional. So is the word 'at' before the name of the event.

noon
 local noon
 local midnight

This implies the Sun. The 'local noon' specification is equivalent to 'sun culminates'.

The word 'at' may optionally appear before the name of the event.

SEE ALSO

Date::ManipX::Almanac::Lang

SUPPORT

Support is by the author. Please file bug reports at https://rt.cpan.org/Public/Dist/Display.html?Name=Date-ManipX-Astro-Lang-english, https://github.com/trwyant/perl-Date-ManipX-Astro-Lang-english/issues/, or in electronic mail to the author.

AUTHOR

Thomas R. Wyant, III wyant at cpan dot org

COPYRIGHT AND LICENSE

Copyright (C) 2021 by Thomas R. Wyant, III

This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5.10.0. For more details, see the full text of the licenses in the directory LICENSES.

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.