(Hun) mkN with 3-9 args: use more reliable forms to infer vowel harmony

This commit is contained in:
Inari Listenmaa
2020-06-27 19:51:26 +02:00
parent d1d481b6e8
commit b33a65bbb5
2 changed files with 40 additions and 17 deletions
+4 -2
View File
@@ -22,7 +22,6 @@ oper
mkN : (sgnom, sggen : Str) -> N ; -- Singular nominative and accusative. Use: `mkN "név" "nevet"`
mkN : (sgnom, sggen, plnom : Str) -> N ; -- Singular nominative, singular accusative, plural nominative. Use: `mkN "falu" "falut" "falvak"`
mkN : (sgnom, sggen, plnom, sgnom_possdSg3 : Str) -> N ; -- Singular nominative, singular accusative, plural nominative, singular nominative possessed by 3rd person singular. Use: `mkN "virág" "virágot" "virágok" "virága"` (would give "virágja" otherwise)
mkN : (férfi : Str) -> (harm : Harmony) -> (ak : Str) -> N ; -- Noun with unpredictable vowel harmony and plural allomorph
mkN : (unoka : Str) -> (testvér : N) -> N ; -- Compound noun. Use: `mkN "unoka" (mkN "testvér")` (would give wrong harmony with `mkN "unokatestvér"`)
} ;
@@ -139,8 +138,11 @@ oper
\prefix,n -> n ** {s = \\x => prefix + n.s ! x} ;
mkN : (x1,_,_,_,_,_,_,_,x9 : Str) -> N =
\a,b,c,d,e,f,g,h,i -> lin N (worstCaseNoun a b c d e f g h i (getHarm a)) ;
\nomsg,accsg,supsg,allsg,nompl,f,g,h,i ->
lin N (worstCaseNoun nomsg accsg supsg allsg nompl
f g h i (harmFromSgAll allsg)) ;
-- mkN : (férfi : Str) -> (harm : Harmony) -> (ak : Str) -> N ; -- Noun with unpredictable vowel harmony and plural allomorph
mkN : Str -> Harmony -> N =
\s,h -> lin N (mkNounHarm h (pluralAllomorph s) s) ;