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 thelocation
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
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-2022 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.