forked from GitHub/gf-core
worst case of Fin mkA; default case endings for Fin symbol as PN
This commit is contained in:
@@ -951,5 +951,20 @@ oper
|
||||
} ;
|
||||
} ;
|
||||
|
||||
defaultCaseEnding : Case -> Str = \c -> case c of {
|
||||
Nom => "" ;
|
||||
Gen => "n" ;
|
||||
Part => "a" ;
|
||||
Transl => "ksi" ;
|
||||
Ess => "na" ;
|
||||
Iness => "ssa" ;
|
||||
Elat => "sta" ;
|
||||
Illat => "an" ;
|
||||
Adess => "lla" ;
|
||||
Ablat => "lta" ;
|
||||
Allat => "lle" ;
|
||||
Abess => "tta"
|
||||
} ;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -483,8 +483,23 @@ oper
|
||||
mkA : N -> (kivempaa,kivinta : Str) -> A = regAdjective ;
|
||||
mkA : (sana : AK) -> A = \w -> noun2adjDeg (nForms2N w.s) ;
|
||||
|
||||
-- mkA : (hyva,parempi,paras : N) -> (hyvin,paremmin,parhaiten : Str) -> A ;
|
||||
} ;
|
||||
mkA : (hyva,parempi,paras : N) -> (hyvin,paremmin,parhaiten : Str) -> A = \h,p,ps,hn,pn,ph -> lin A {
|
||||
s = table {
|
||||
Posit => table {
|
||||
AN nf => h.s ! nf ;
|
||||
AAdv => hn
|
||||
} ;
|
||||
Compar => table {
|
||||
AN nf => p.s ! nf ;
|
||||
AAdv => pn
|
||||
} ;
|
||||
Superl => table {
|
||||
AN nf => ps.s ! nf ;
|
||||
AAdv => ph
|
||||
}
|
||||
}
|
||||
} ;
|
||||
} ;
|
||||
|
||||
mkA_1 : Str -> A = \x -> noun2adjDeg (mk1N x) ** {lock_A = <>} ;
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
--# -path=.:../abstract:../common
|
||||
|
||||
concrete SymbolFin of Symbol = CatFin ** open Prelude, NounFin, ResFin in {
|
||||
concrete SymbolFin of Symbol = CatFin ** open Prelude, NounFin, ResFin, MorphoFin in {
|
||||
|
||||
lin
|
||||
SymbPN i = {s = \\c => i.s} ; --- c
|
||||
IntPN i = {s = \\c => i.s} ; --- c
|
||||
FloatPN i = {s = \\c => i.s} ; --- c
|
||||
SymbPN i = {s = \\c => i.s ++ BIND ++ defaultCaseEnding c} ; --- c
|
||||
IntPN i = {s = \\c => i.s ++ BIND ++ ":" ++ BIND ++ defaultCaseEnding c} ; --- c
|
||||
FloatPN i = {s = \\c => i.s ++ BIND ++ ":" ++ BIND ++ defaultCaseEnding c} ; --- c
|
||||
NumPN i = {s = \\c => i.s!Sg!Nom } ; --- c
|
||||
|
||||
CNIntNP cn i = {
|
||||
|
||||
Reference in New Issue
Block a user