summaryrefslogtreecommitdiff
path: root/lib/rites/rite_ef/precedence_ef.ml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rites/rite_ef/precedence_ef.ml')
-rw-r--r--lib/rites/rite_ef/precedence_ef.ml37
1 files changed, 18 insertions, 19 deletions
diff --git a/lib/rites/rite_ef/precedence_ef.ml b/lib/rites/rite_ef/precedence_ef.ml
index 3c417bb..9997bb2 100644
--- a/lib/rites/rite_ef/precedence_ef.ml
+++ b/lib/rites/rite_ef/precedence_ef.ml
@@ -152,7 +152,7 @@ let band (ctx : Vocab_ef.season Precedence.context) (c : Vocab_ef.rank Precedenc
(* 7: I-class ferias not above -- Ash Wednesday; Mon/Tue/Wed of Holy Week.
Thu-Sat of Holy Week are the Triduum, entry 2 above, not this entry. *)
else if is_temporal && rank = Class1 && (off = -46 || (off >= -6 && off <= -4)) then 7
- (* 8: All Souls -- register line 334's own text carries a qualifier this
+ (* 8: All Souls -- RG 91 entry 8's own text (§4) carries a qualifier this
transcription must honour: "yields to an occurring Sunday". 2 November
is always Time_after_pentecost (well clear of Advent/Lent/Passiontide
and of every other entry's own Easter-relative or fixed date), so a
@@ -182,9 +182,9 @@ let band (ctx : Vocab_ef.season Precedence.context) (c : Vocab_ef.rank Precedenc
not the universal layer (11), and marked as an indult overlay (12's
"not indult" test having just failed). *)
else if (not is_temporal) && (not is_vigil) && rank = Class1 then 13
- (* 14: Feasts of the Lord, II class -- register line 341, deliberately
- UNQUALIFIED (contrast entry 16 at line 342, which explicitly says "not
- of the Lord"; RG 37c, register line 393, speaks of "II-class feasts of
+ (* 14: Feasts of the Lord, II class -- RG 91 entry 14, deliberately
+ UNQUALIFIED (contrast entry 16, which explicitly says "not
+ of the Lord"; RG 37c (§4, "Sundays") speaks of "II-class feasts of
the Lord" replacing an occurring II-class Sunday with no universal
qualifier either). No layer test here, unlike 11/12/13 and 16/19/20:
the register does not split this entry into universal/proper/indult,
@@ -232,7 +232,7 @@ let band (ctx : Vocab_ef.season Precedence.context) (c : Vocab_ef.rank Precedenc
Office (RG 88, see temporal_ef.ml's [temporal]), so those never carry
this entry unless they happen to fall on the Saturday itself. Excludes
vigils for the same reason 11-13/14/16/19/20/23/24 do: RG 91 has no
- IV-class vigil at all (its own vigil list, register lines 381-384,
+ IV-class vigil at all (RG 91's own vigil list, §4 "Vigils",
stops at III class), so one would be an anomaly, not this entry. *)
else if is_temporal && (not is_vigil) && rank = Class4 && weekday = Date.Sat then 27
(* 28: IV-class ferias -- the unqualified catch-all (temporal_ef.ml's own
@@ -339,7 +339,7 @@ let impedes_vigil (winner : Vocab_ef.rank Precedence.candidate) =
let nativity_octave_prefix = "ef-nativity-octave-day-"
(* RG 109's own three named seasons for (e), "of ferias of Advent, Lent and
- Passiontide" (register line 376) -- temporal_ef.ml's generic
+ Passiontide" (§4, "Commemorations") -- temporal_ef.ml's generic
<season>-<week>-<weekday> ferial fallback slugs, whose season word is
[season_slug_word]'s output for exactly these three (vocab_ef.ml: Advent
and Passiontide are unmodified [season_to_string]; Lent likewise). Also
@@ -349,7 +349,7 @@ let nativity_octave_prefix = "ef-nativity-octave-day-"
[universal_layer] -- private: nothing outside [privilege_of] needs it. *)
let alp_feria_prefixes = [ "ef-advent-"; "ef-lent-"; "ef-passiontide-" ]
-(* RG 109 (register lines 374-377, docs/research/rules-register.md §4): the
+(* RG 109 (docs/research/rules-register.md §4, "Commemorations"): the
closed list of privileged commemorations, checked in the register's own
lettered order. A candidate matching none of (a)-(f) is ordinary, per the
register's own closing sentence, "All others are ordinary." Read entirely
@@ -374,10 +374,10 @@ let privilege_of (c : Vocab_ef.rank Precedence.candidate) : Precedence.privilege
let slug = Slug.to_string cel.Celebration.slug in
let is_temporal = c.Precedence.origin = Precedence.Temporal in
let open Vocab_ef in
- (* (a) register line 374: "of a Sunday" -- the same slug marker RG 33's
+ (* (a) RG 109(a) (§4): "of a Sunday" -- the same slug marker RG 33's
[impedes_vigil] already reads to answer "is this candidate a Sunday". *)
if is_sunday_slug slug then Precedence.Privileged
- (* (b) register line 374-375: "of a I-class day" -- the candidate's own
+ (* (b) RG 109(b) (§4): "of a I-class day" -- the candidate's own
rank. In this codebase's current disposition rules the ONLY way a
[Class1] candidate ever reaches [Commemorate] at all is via
[Celebration.status = Commemoration_only] (a plain [Feast]-status
@@ -385,17 +385,17 @@ let privilege_of (c : Vocab_ef.rank Precedence.candidate) : Precedence.privilege
branch is real but its only reachable witness today is that shape; see
the task report. *)
else if rank = Class1 then Precedence.Privileged
- (* (c) register line 375: "of days within the Octave of the Nativity". *)
+ (* (c) RG 109(c) (§4): "of days within the Octave of the Nativity". *)
else if is_temporal && String.starts_with ~prefix:nativity_octave_prefix slug then
Precedence.Privileged
- (* (d) register line 375-376: "of September Ember days" -- named on its
+ (* (d) RG 109(d) (§4): "of September Ember days" -- named on its
own because September falls entirely outside (e)'s three seasons
(Advent/Lent/Passiontide) under ANY reading, not because it needs
excluding FROM (e) the way review round 1's F1/F2 finding corrected
the Advent/Lent Ember sets below to no longer need. *)
else if is_temporal && String.starts_with ~prefix:september_ember_prefix slug then
Precedence.Privileged
- (* (e) register line 376: "of ferias of Advent, Lent and Passiontide" --
+ (* (e) RG 109(e) (§4): "of ferias of Advent, Lent and Passiontide" --
CORRECTED, fix round 1 (F1/F2): this branch previously excluded the
Advent and Lent Ember sets via [not (is_ember_18 slug)], reading RG
109(e)'s bare "feriis Adventus, Quadragesimae" as tacitly narrower than
@@ -428,7 +428,7 @@ let privilege_of (c : Vocab_ef.rank Precedence.candidate) : Precedence.privilege
it under its own name. *)
else if is_temporal && List.exists (fun p -> String.starts_with ~prefix:p slug) alp_feria_prefixes then
Precedence.Privileged
- (* (f) register line 376-377: "of the Major Rogations, in Mass" -- the
+ (* (f) RG 109(f) (§4): "of the Major Rogations, in Mass" -- the
Major Litanies (25 April, RG 80) are not yet computed anywhere in this
codebase (temporal_ef.ml's own comment on [temporal]'s Rogation branch:
"The Major Litanies... are a fixed date and are not yet computed; they
@@ -478,13 +478,12 @@ let disposition ~(winner : Vocab_ef.rank Precedence.candidate)
cel.Celebration.rank = Class1
&& not (is_sunday_slug (Slug.to_string cel.Celebration.slug))
then
- (* RG 95 (register lines 323, 363): only I-class FEASTS have the right
+ (* RG 95 (§4, "Occurrence" and "Transfer/translation"): only I-class FEASTS have the right
of translation -- RG 91's own table lists Sundays as a separate row
- (entry 6, register line 332) from feasts (entries 11-13, register
- lines 337-339), so a Sunday is never a "feast" in RG 95's sense, and
+ (entry 6) from feasts (entries 11-13), so a Sunday is never a "feast" in RG 95's sense, and
[is_sunday_slug] (the same marker RG 33's [impedes_vigil] and RG
109(a)'s [privilege_of] already use) excludes it here. This is the
- branch that completes Task 7's All Souls fix (register line 334, RG
+ branch that completes Task 7's All Souls fix (RG
91 entry 8): All Souls is I class, not a vigil, and not a Sunday
slug, so once it loses to an occurring Sunday it still reaches here
and transfers -- to 3 November, now DIRECTLY authorised by RG 96
@@ -613,7 +612,7 @@ let disposition ~(winner : Vocab_ef.rank Precedence.candidate)
the temporal Class4 [Omit] branch above because a Sunday is never
IV class -- RG 11-12/91 entry 6/15 make every Sunday I or II class,
never a "feria" at all in Caput IV's own sense, RG 21): RG 109(a)
- (register line 374) lists "of a Sunday" as a privileged commemoration
+ (§4) lists "of a Sunday" as a privileged commemoration
category, which presupposes an impeded Sunday stays put rather than
moving to another day the way a feast does -- [privilege_of] tags it
[Privileged] via the same [is_sunday_slug] marker, with no further
@@ -632,7 +631,7 @@ let disposition ~(winner : Vocab_ef.rank Precedence.candidate)
Precedence.Commemorate (privilege_of loser)
(* Task 9: how many of the day's commemorations RG 111 admits, and which
- (docs/research/rules-register.md §4, register line 378, "Commemorations"
+ (docs/research/rules-register.md §4, "Commemorations",
RG 111). [band] decides who wins the day; [disposition] decides who is
even eligible to be commemorated, and tags each with its RG 109 privilege
via [privilege_of]; this decides how many of THOSE survive.