forked from GitHub/gf-rgl
(Kor) Det, Quant
This commit is contained in:
@@ -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
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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 =
|
||||||
|
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|||||||
Reference in New Issue
Block a user