mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-24 03:52:50 -06:00
CompCN added to Ger Fin Dut Rus Pol
This commit is contained in:
@@ -63,7 +63,8 @@ concrete VerbDut of Verb = CatDut ** open Prelude, ResDut in {
|
|||||||
insertObj (\\_ => appPrep v.c2 np.s) (
|
insertObj (\\_ => appPrep v.c2 np.s) (
|
||||||
predVv v)))) ** {c2 = v.c2} ;
|
predVv v)))) ** {c2 = v.c2} ;
|
||||||
|
|
||||||
UseComp comp = insertAdv (comp.s ! agrP3 Sg) (predV zijn_V) ; -- agr not used
|
UseComp comp = insertObj comp.s (predV zijn_V) ; -- agr not used
|
||||||
|
CompCN cn = {s = \\a => cn.s ! Strong ! NF a.n Nom} ;
|
||||||
CompAP ap = {s = \\_ => ap.s ! APred} ;
|
CompAP ap = {s = \\_ => ap.s ! APred} ;
|
||||||
CompNP np = {s = \\_ => np.s ! NPNom} ;
|
CompNP np = {s = \\_ => np.s ! NPNom} ;
|
||||||
CompAdv a = {s = \\_ => a.s} ;
|
CompAdv a = {s = \\_ => a.s} ;
|
||||||
|
|||||||
@@ -99,6 +99,16 @@ concrete VerbFin of Verb = CatFin ** open Prelude, ResFin in {
|
|||||||
} --- definiteness of NP ?
|
} --- definiteness of NP ?
|
||||||
in ap.s ! False ! (NCase n c)
|
in ap.s ! False ! (NCase n c)
|
||||||
} ;
|
} ;
|
||||||
|
CompCN cn = {
|
||||||
|
s = \\agr =>
|
||||||
|
let
|
||||||
|
n = complNumAgr agr ;
|
||||||
|
c = case n of {
|
||||||
|
Sg => Nom ; -- minä olen iso ; te olette iso
|
||||||
|
Pl => Part -- me olemme isoja ; te olette isoja
|
||||||
|
} --- definiteness of NP ?
|
||||||
|
in cn.s ! (NCase n c)
|
||||||
|
} ;
|
||||||
CompNP np = {s = \\_ => np.s ! NPCase Nom} ;
|
CompNP np = {s = \\_ => np.s ! NPCase Nom} ;
|
||||||
CompAdv a = {s = \\_ => a.s} ;
|
CompAdv a = {s = \\_ => a.s} ;
|
||||||
|
|
||||||
|
|||||||
@@ -63,14 +63,18 @@ concrete VerbGer of Verb = CatGer ** open Prelude, ResGer in {
|
|||||||
insertObj (\\_ => appPrep v.c2 np.s) (
|
insertObj (\\_ => appPrep v.c2 np.s) (
|
||||||
predV v)))) ** {c2 = v.c2} ;
|
predV v)))) ** {c2 = v.c2} ;
|
||||||
|
|
||||||
UseComp comp = insertAdv (comp.s ! agrP3 Sg) (predV sein_V) ; -- agr not used
|
UseComp comp = insertObj comp.s (predV sein_V) ; -- agr not used
|
||||||
-- we want to say "ich liebe sie nicht" but not "ich bin alt nicht"
|
-- we want to say "ich liebe sie nicht" but not "ich bin alt nicht"
|
||||||
|
|
||||||
CompAP ap = {s = \\_ => ap.s ! APred} ;
|
CompAP ap = {s = \\_ => ap.s ! APred} ;
|
||||||
CompNP np = {s = \\_ => np.s ! NPC Nom} ;
|
CompNP np = {s = \\_ => np.s ! NPC Nom} ;
|
||||||
CompAdv a = {s = \\_ => a.s} ;
|
CompAdv a = {s = \\_ => a.s} ;
|
||||||
|
|
||||||
-- CompCN cn
|
CompCN cn = {s = \\a => case numberAgr a of {
|
||||||
|
Sg => "ein" + pronEnding ! GSg cn.g ! Nom ++ cn.s ! Strong ! Sg ! Nom ;
|
||||||
|
Pl => cn.s ! Strong ! Pl ! Nom
|
||||||
|
}
|
||||||
|
} ;
|
||||||
|
|
||||||
AdvVP vp adv = insertAdv adv.s vp ;
|
AdvVP vp adv = insertAdv adv.s vp ;
|
||||||
AdVVP adv vp = insertAdV adv.s vp ;
|
AdVVP adv vp = insertAdV adv.s vp ;
|
||||||
|
|||||||
@@ -221,6 +221,12 @@
|
|||||||
-- possible problem: dzieci ,ktorych piecioro bawilo sie... / okna, ktorych piec stalo opartych o sciane...
|
-- possible problem: dzieci ,ktorych piecioro bawilo sie... / okna, ktorych piec stalo opartych o sciane...
|
||||||
param GenNum = MascPersSg | MascAniSg | MascInaniSg | FemSg | NeutSg | MascPersPl | OthersPl;
|
param GenNum = MascPersSg | MascAniSg | MascInaniSg | FemSg | NeutSg | MascPersPl | OthersPl;
|
||||||
|
|
||||||
|
--- AR 7/12/2010 for VerbPol.CompCN
|
||||||
|
oper numGenNum : GenNum -> Number = \n -> case n of {
|
||||||
|
MascPersPl | OthersPl => Pl ;
|
||||||
|
_ => Sg
|
||||||
|
} ;
|
||||||
|
|
||||||
param MaybeGenNum = NoGenNum | JustGenNum GenNum;
|
param MaybeGenNum = NoGenNum | JustGenNum GenNum;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
|
|||||||
@@ -40,6 +40,8 @@ lin
|
|||||||
-- CompAP : AP -> Comp ; -- (be) small
|
-- CompAP : AP -> Comp ; -- (be) small
|
||||||
CompAP ap = { s = \\gn => ap.s ! AF gn Nom };
|
CompAP ap = { s = \\gn => ap.s ! AF gn Nom };
|
||||||
|
|
||||||
|
CompCN cn = { s = \\gn => cn.s ! numGenNum gn ! Nom }; --- AR 7/12/2010
|
||||||
|
|
||||||
-- CompNP : NP -> Comp ; -- (be) a man
|
-- CompNP : NP -> Comp ; -- (be) a man
|
||||||
CompNP np = { s = \\gn => np.dep !InstrC };
|
CompNP np = { s = \\gn => np.dep !InstrC };
|
||||||
|
|
||||||
|
|||||||
@@ -82,6 +82,51 @@ concrete VerbRus of Verb = CatRus ** open ResRus, Prelude in {
|
|||||||
s3 = \\g,n=> ""
|
s3 = \\g,n=> ""
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
-- AR 7/12/2010 --- hmmm
|
||||||
|
CompCN zloj ={
|
||||||
|
s= \\clf,gn,p =>
|
||||||
|
let num = numGenNum gn ;
|
||||||
|
zlojsg = zloj.s ! NF Sg Nom ;
|
||||||
|
zlojpl = zloj.s ! NF Pl Nom
|
||||||
|
in
|
||||||
|
case clf of {
|
||||||
|
-- person is ignored !
|
||||||
|
ClInfinit => "быть" ++ zloj.s ! NF Sg Inst ;
|
||||||
|
ClImper => case gn of
|
||||||
|
{ (GSg _) => "будь" ++ zloj.s ! NF Sg Inst ;
|
||||||
|
GPl => "будьте" ++ zloj.s ! NF Pl Inst
|
||||||
|
};
|
||||||
|
-- infinitive does not save GenNum,
|
||||||
|
-- but indicative does for the sake of adjectival predication !
|
||||||
|
ClIndic Present _ => zloj.s ! NF num Nom ;
|
||||||
|
ClIndic PastRus _ => case gn of
|
||||||
|
{ (GSg Fem) => "была" ++ zlojsg ;
|
||||||
|
(GSg Masc) => "был" ++ zlojsg ;
|
||||||
|
(GSg Neut) => "был" ++ zlojsg ;
|
||||||
|
GPl => "были" ++ zlojpl
|
||||||
|
};
|
||||||
|
ClIndic Future _ => case gn of
|
||||||
|
{ GPl => case p of
|
||||||
|
{ P3 => "будут" ++ zlojpl ;
|
||||||
|
P2 => "будете" ++ zlojpl ;
|
||||||
|
P1 => "будем" ++ zlojpl
|
||||||
|
} ;
|
||||||
|
(GSg _) => case p of
|
||||||
|
{P3 => "будет" ++ zlojsg ;
|
||||||
|
P2 => "будешь"++ zlojsg ;
|
||||||
|
P1=> "буду" ++ zlojsg
|
||||||
|
}
|
||||||
|
};
|
||||||
|
ClCondit => ""
|
||||||
|
} ;
|
||||||
|
|
||||||
|
asp = Imperfective ;
|
||||||
|
w = Act;
|
||||||
|
negBefore = True;
|
||||||
|
s2 = "";
|
||||||
|
s3 = \\g,n=> ""
|
||||||
|
} ;
|
||||||
|
|
||||||
|
|
||||||
-- Verb phrases can also be formed from adjectives (" молод"),
|
-- Verb phrases can also be formed from adjectives (" молод"),
|
||||||
-- common nouns (" человек"), and noun phrases (" самый молодой").
|
-- common nouns (" человек"), and noun phrases (" самый молодой").
|
||||||
|
|||||||
Reference in New Issue
Block a user