added NamesLat, IdiomLat

This commit is contained in:
Krasimir Angelov committed 2026-10-05 13:57:54 +02:00
1 parent dfb77d2c19
commit b4d288419e
2 files changed
+30 -2

No files matched your search

+3 -2
View File
@@ -13,7 +13,8 @@ concrete GrammarLat of Grammar =
PhraseLat,
TextX-[Adv],
TenseX-[Adv],
StructuralLat
-- IdiomLat
StructuralLat,
NamesLat,
IdiomLat
** {
} ;
+27
View File
@@ -0,0 +1,27 @@
concrete NamesLat of Names = CatLat ** open Prelude, ResLat in {
lin
GivenName name = dummyNP name.s ** {
g = case name.g of {Male => Masc; Female => Fem}; n = Sg
} ;
MaleSurname name = dummyNP (name.s ! Male) ** {g = Masc; n = Sg} ;
FemaleSurname name = dummyNP (name.s ! Female) ** {g = Fem; n = Sg} ;
PlSurname name = dummyNP name.pl ** {g = Masc; n = Pl} ;
FullName first last = dummyNP (first.s ++ last.s ! first.g) ** {
g = case first.g of {Male => Masc; Female => Fem}; n = Sg
} ;
UseLN name = {
s = \\_,c => name.s ! c; n = name.n; g = name.g; p = P3; adv = "";
preap, postap = {s = \\_ => ""}; det = {s,sp = \\_ => ""; n = name.n}
} ;
PlainLN name = {
s = \\_,c => name.s ! c; n = name.n; g = name.g; p = P3; adv = "";
preap, postap = {s = \\_ => ""}; det = {s,sp = \\_ => ""; n = name.n}
} ;
InLN name = mkAdverb ("in" ++ name.s ! Abl) ;
AdjLN ap name = name ** {
s = \\c => name.s ! c ++ ap.s ! Ag name.g name.n c
} ;
}