1
0
forked from GitHub/gf-rgl

(Kor) Det, Quant

This commit is contained in:
Inari Listenmaa
2020-03-25 14:03:38 +01:00
parent cfdc4d9955
commit d83ded2624
3 changed files with 26 additions and 8 deletions

View File

@@ -7,7 +7,11 @@ concrete NounKor of Noun = CatKor ** open ResKor, Prelude in {
--2 Noun phrases --2 Noun phrases
-- : Det -> CN -> NP -- : Det -> CN -> NP
DetCN det cn = cn ** {s = \\c => det.s ++ cn.s ! c} ; DetCN det cn = cn ** {s =
\\c => case det.n of {
-- Pl => det.s ++ cn.s ! Bare ++ BIND ++ plural ! c ;
_ => det.s ++ cn.s ! c } ;
} ;
-- : PN -> NP ; -- : PN -> NP ;
-- UsePN pn = pn ** { -- UsePN pn = pn ** {
@@ -45,8 +49,9 @@ concrete NounKor of Noun = CatKor ** open ResKor, Prelude in {
-- Determiners can form noun phrases directly. -- Determiners can form noun phrases directly.
-- : Det -> NP ; -- : Det -> NP ;
-- DetNP det = emptyNP ** { DetNP det = det ** {
-- } ; s = det.sp
} ;
-- MassNP : CN -> NP ; -- MassNP : CN -> NP ;
-- MassNP cn = useN cn ** { -- MassNP cn = useN cn ** {
@@ -60,6 +65,7 @@ concrete NounKor of Noun = CatKor ** open ResKor, Prelude in {
-- : Quant -> Num -> Det ; -- : Quant -> Num -> Det ;
DetQuant quant num = quant ** { DetQuant quant num = quant ** {
s = quant.s ++ num.s ! Indep ;
n = num.n n = num.n
} ; } ;

View File

@@ -59,7 +59,8 @@ oper
BaseQuant : Type = { BaseQuant : Type = {
s : Str ; s : Str ;
isPoss : Bool isPoss : Bool ;
p : Phono
} ; } ;
Determiner : Type = BaseQuant ** { Determiner : Type = BaseQuant ** {
@@ -90,8 +91,19 @@ oper
baseQuant : BaseQuant = { baseQuant : BaseQuant = {
s = [] ; s = [] ;
isPoss = False ; isPoss = False ;
p = Vowel ;
} ; } ;
mkQuant : (s,sp : Str) -> Quant = \s,sp -> baseQuant ** {
s = s ;
sp = (mkNoun sp).s ;
p = (mkNoun sp).p ;
} ;
plural : NForm => Str = table {
Bare => "들" ;
nf => "들" + allomorph nf "들"
} ;
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- Postpositions -- Postpositions

View File

@@ -69,11 +69,11 @@ lin much_Det = R.indefDet "" sg ;
lin somePl_Det = lin somePl_Det =
lin someSg_Det = lin someSg_Det =
lin no_Quant = lin no_Quant =
lin that_Quant = -}
lin this_Quant = lin that_Quant = mkQuant "그" "그것" ;
lin which_IQuant = lin this_Quant = mkQuant "이" "이것" ;
{-lin which_IQuant =
----- -----