added GN & SN categories for constructing names

This commit is contained in:
Krasimir Angelov
2022-12-15 08:44:42 +01:00
parent d0e433cd46
commit 7085acacc9
55 changed files with 371 additions and 43 deletions
+1
View File
@@ -86,6 +86,7 @@ concrete CatBul of Cat = CommonX - [IAdv,AdV] ** open ResBul, Prelude, Predef, (
N = {s : NForm => Str; rel : AForm => Str; relType : NRelType; g : AGender} ;
N2 = {s : NForm => Str; rel : AForm => Str; relType : NRelType; g : AGender} ** {c2 : Preposition} ;
N3 = {s : NForm => Str; rel : AForm => Str; relType : NRelType; g : AGender} ** {c2,c3 : Preposition} ;
GN, SN = {s : Str; g : Gender} ;
PN = {s : Str; gn : GenNum} ;
lindef
+24
View File
@@ -92,6 +92,30 @@ lin
s3 = ""
} ;
InflectionGN = \pn -> {
t = "същ.с.л." ;
s1= heading1 ("Собствено Име"++
case pn.g of {
Masc => "(м.р.)" ;
Fem => "(ж.р.)" ;
Neut => "(ср.р.)"
}) ;
s2 = pn.s ;
s3 = ""
} ;
InflectionSN = \pn -> {
t = "същ.с.ф." ;
s1= heading1 ("Фамилно Име"++
case pn.g of {
Masc => "(м.р.)" ;
Fem => "(ж.р.)" ;
Neut => "(ср.р.)"
}) ;
s2 = pn.s ;
s3 = ""
} ;
InflectionA, InflectionA2 = \a -> {
t = "пр" ;
s1= heading1 ("Прилагателно") ;
+9
View File
@@ -300,5 +300,14 @@ lin UseDAP dap = {
p = NounP3 dap.p
} ;
lin GivenName, Surname = \n -> {
s = n.s ;
gn = GSg n.g
} ;
lin FullName gn sn = {
s = gn.s ++ sn.s ;
gn = GSg gn.g
} ;
}
+9
View File
@@ -271,6 +271,15 @@ oper
feminine : Gender = Fem ;
neutr : Gender = Neut ;
mkGN : Str -> Gender -> GN =
\s,g -> lin GN {s = s; g = g} ;
mkSN = overload {
mkSN : Str -> SN =
\s -> lin SN {s = s; g = Masc} ;
mkSN : Str -> Gender -> SN =
\s,g -> lin SN {s = s; g = g} ;
} ;
mkPN = overload {
mkPN : Str -> PN = \s -> {s = s; gn = GSg Masc ; lock_PN = <>} ;
mkPN : Str -> Gender -> PN =