# Custom Library Messages

## version 28/100614 by David Fisher

Section 3.4 - Decision rules - unindexed

[ The following rule was taken from Emily Short's "Plurality" extension ]

To decide whether (x_ - an object) acts plural:
(- ({x_} has pluralname) -).

To decide whether (x_ - an object) does not act plural:
if x_ acts plural, decide no;
otherwise decide yes.

To decide whether (x_ - an object) acts feminine:
(- ({x_} has female) -).

To decide whether (x_ - an object) acts neuter:
(- {x_} has neuter || ({x_} hasnt animate && {x_} hasnt female) -).

To decide whether (x_ - an object) is nothing:
(- {x_} == nothing -).

To decide whether lm_present:
if use_temporary_tense is true:
if temporary_tense is present tense, decide yes;
decide no;
otherwise:
if library message tense is present tense, decide yes;
decide no;

To decide whether lm_past:
if use_temporary_tense is true:
if temporary_tense is past tense, decide yes;
decide no;
otherwise:
if library message tense is past tense, decide yes;
decide no.

To decide whether lm_plu:
if curr_obj_number is plural, decide yes;
otherwise decide no.
To decide whether lm_sing:
if curr_obj_number is singular, decide yes;
otherwise decide no.

To decide whether lm_p1:
if curr_obj_person is first person, decide yes;
otherwise decide no.
To decide whether lm_p2:
if curr_obj_person is second person, decide yes;
otherwise decide no.
To decide whether lm_p3:
if curr_obj_person is third person, decide yes;
otherwise decide no.

To decide whether lm_masc:
if curr_obj_gender is gender masculine, decide yes;
otherwise decide no.
To decide whether lm_not_masc:
if curr_obj_gender is gender masculine, decide no;
otherwise decide yes.
To decide whether lm_fem:
if curr_obj_gender is gender feminine, decide yes;
otherwise decide no.
To decide whether lm_neut:
if curr_obj_gender is gender neuter, decide yes;
otherwise decide no.