forked from GitHub/gf-rgl
(Kor) use Polite as imperative—not perfect but…
…works for some situations, improvements are welcome.
This commit is contained in:
@@ -16,7 +16,7 @@ concrete CatKor of Cat = CommonX ** open ResKor, Prelude in {
|
|||||||
Cl = ResKor.ClSlash ;
|
Cl = ResKor.ClSlash ;
|
||||||
ClSlash = ResKor.ClSlash ;
|
ClSlash = ResKor.ClSlash ;
|
||||||
SSlash = ResKor.Sentence ; -- sentence missing NP; e.g. "she has looked at"
|
SSlash = ResKor.Sentence ; -- sentence missing NP; e.g. "she has looked at"
|
||||||
Imp = {s : Number => Polarity => Str} ; -- imperative e.g. "look at this"
|
Imp = {s : Polarity => Str} ; -- imperative e.g. "look at this"
|
||||||
|
|
||||||
--2 Questions and interrogatives
|
--2 Questions and interrogatives
|
||||||
|
|
||||||
|
|||||||
@@ -53,7 +53,6 @@ oper IdetIP : IDet -> IP = notYet "IdetIP" ;
|
|||||||
oper IdetQuant : IQuant -> Num -> IDet = notYet "IdetQuant" ;
|
oper IdetQuant : IQuant -> Num -> IDet = notYet "IdetQuant" ;
|
||||||
oper ImpP3 : NP -> VP -> Utt = notYet "ImpP3" ;
|
oper ImpP3 : NP -> VP -> Utt = notYet "ImpP3" ;
|
||||||
oper ImpPl1 : VP -> Utt = notYet "ImpPl1" ;
|
oper ImpPl1 : VP -> Utt = notYet "ImpPl1" ;
|
||||||
oper ImpVP : VP -> Imp = notYet "ImpVP" ;
|
|
||||||
oper ImpersCl : VP -> Cl = notYet "ImpersCl" ;
|
oper ImpersCl : VP -> Cl = notYet "ImpersCl" ;
|
||||||
oper OrdDigits : Digits -> Ord = notYet "OrdDigits" ;
|
oper OrdDigits : Digits -> Ord = notYet "OrdDigits" ;
|
||||||
oper OrdNumeral : Numeral -> Ord = notYet "OrdNumeral" ;
|
oper OrdNumeral : Numeral -> Ord = notYet "OrdNumeral" ;
|
||||||
@@ -101,9 +100,6 @@ oper UseQCl : Temp -> Pol -> QCl -> QS = notYet "UseQCl" ;
|
|||||||
oper UseSlash : Temp -> Pol -> ClSlash -> SSlash = notYet "UseSlash" ;
|
oper UseSlash : Temp -> Pol -> ClSlash -> SSlash = notYet "UseSlash" ;
|
||||||
oper UttIAdv : IAdv -> Utt = notYet "UttIAdv" ;
|
oper UttIAdv : IAdv -> Utt = notYet "UttIAdv" ;
|
||||||
oper UttIP : IP -> Utt = notYet "UttIP" ;
|
oper UttIP : IP -> Utt = notYet "UttIP" ;
|
||||||
oper UttImpPl : Pol -> Imp -> Utt = notYet "UttImpPl" ;
|
|
||||||
oper UttImpPol : Pol -> Imp -> Utt = notYet "UttImpPol" ;
|
|
||||||
oper UttImpSg : Pol -> Imp -> Utt = notYet "UttImpSg" ;
|
|
||||||
oper UttInterj : Interj -> Utt = notYet "UttInterj" ;
|
oper UttInterj : Interj -> Utt = notYet "UttInterj" ;
|
||||||
oper UttQS : QS -> Utt = notYet "UttQS" ;
|
oper UttQS : QS -> Utt = notYet "UttQS" ;
|
||||||
oper VPSlashPrep : VP -> Prep -> VPSlash = notYet "VPSlashPrep" ;
|
oper VPSlashPrep : VP -> Prep -> VPSlash = notYet "VPSlashPrep" ;
|
||||||
|
|||||||
@@ -8,11 +8,11 @@ concrete PhraseKor of Phrase = CatKor ** open Prelude, ResKor in {
|
|||||||
UttIAdv iadv = iadv ;
|
UttIAdv iadv = iadv ;
|
||||||
UttAdv adv = adv ;
|
UttAdv adv = adv ;
|
||||||
UttInterj i = i ;
|
UttInterj i = i ;
|
||||||
{-
|
|
||||||
UttImpSg pol imp =
|
UttImpSg pol imp = {s = imp.s ! pol.p} ;
|
||||||
UttImpPl pol imp =
|
UttImpPl,
|
||||||
UttImpPol = UttImpSg ;
|
UttImpPol = UttImpSg ;
|
||||||
-}
|
|
||||||
UttIP ip = {s = ip.s ! Bare} ;
|
UttIP ip = {s = ip.s ! Bare} ;
|
||||||
|
|
||||||
UttNP np = {s = np.s ! Bare} ;
|
UttNP np = {s = np.s ! Bare} ;
|
||||||
|
|||||||
@@ -29,13 +29,13 @@ lin
|
|||||||
-- : Temp -> Pol -> ClSlash -> SSlash ; -- (that) she had not seen
|
-- : Temp -> Pol -> ClSlash -> SSlash ; -- (that) she had not seen
|
||||||
UseSlash t p cls = {
|
UseSlash t p cls = {
|
||||||
} ;
|
} ;
|
||||||
|
-}
|
||||||
--2 Imperatives
|
--2 Imperatives
|
||||||
-- : VP -> Imp ;
|
-- : VP -> Imp ;
|
||||||
ImpVP vp = {s = \\num,pol => linVP (VImp num pol) Statement vp} ;
|
ImpVP vp = {s = \\pol => linVP (VF Polite pol) vp} ;
|
||||||
|
|
||||||
--2 Embedded sentences
|
--2 Embedded sentences
|
||||||
-}
|
|
||||||
-- : S -> SC ;
|
-- : S -> SC ;
|
||||||
EmbedS s = {s = s.s ! Subord ++ "것이"} ; -- TODO check subject case
|
EmbedS s = {s = s.s ! Subord ++ "것이"} ; -- TODO check subject case
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user