mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-28 01:18:57 -06:00
Merge branch 'hungarian' of github.com:inariksit/gf-rgl into hungarian
This commit is contained in:
@@ -6,20 +6,24 @@ concrete AdjectiveHun of Adjective = CatHun ** open ResHun, Prelude in {
|
|||||||
|
|
||||||
-- : A -> AP ;
|
-- : A -> AP ;
|
||||||
PositA a = emptyAP ** {
|
PositA a = emptyAP ** {
|
||||||
s = a.s ! Posit
|
s = \\n,c =>
|
||||||
|
let adj : Noun = (a ** {s = a.s ! Posit}) in
|
||||||
|
caseFromStem glue adj c n ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : A -> NP -> AP ;
|
-- : A -> NP -> AP ;
|
||||||
ComparA a np = emptyAP ** {
|
ComparA a np = UseComparA a ** {
|
||||||
s = a.s ! Compar ;
|
compl = \\n => applyAdp (caseAdp Ade) np ;
|
||||||
compar = applyAdp (caseAdp Ade) np ;
|
-- compl = applyAdp (prepos Nom "mint") np ;
|
||||||
-- compar = applyAdp (prepos Nom "mint") np ;
|
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : A2 -> NP -> AP ; -- married to her
|
-- : A2 -> NP -> AP ; -- married to her
|
||||||
ComplA2 a2 np = emptyAP ** {
|
ComplA2 a2 np = let ap : AP = PositA a2 in ap ** {
|
||||||
s = a2.s ! Posit ;
|
s = case a2.isPost of {False => ap.s ; _ => \\_,_ => []} ;
|
||||||
compar = applyAdp a2.c2 np ;
|
compl = \\n => applyAdp a2.c2 np
|
||||||
|
++ case a2.isPost of {
|
||||||
|
True => ap.s ! n ! Nom ;
|
||||||
|
False => [] } ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : A2 -> AP ; -- married to itself
|
-- : A2 -> AP ; -- married to itself
|
||||||
@@ -30,13 +34,15 @@ concrete AdjectiveHun of Adjective = CatHun ** open ResHun, Prelude in {
|
|||||||
|
|
||||||
-- : A -> AP ; -- warmer
|
-- : A -> AP ; -- warmer
|
||||||
UseComparA a = emptyAP ** {
|
UseComparA a = emptyAP ** {
|
||||||
s = a.s ! Compar ;
|
s = \\n,c =>
|
||||||
|
let adj : Noun = (a ** {s = a.s ! Compar}) in
|
||||||
|
caseFromStem glue adj c n ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : CAdv -> AP -> NP -> AP ; -- as cool as John
|
-- : CAdv -> AP -> NP -> AP ; -- as cool as John
|
||||||
CAdvAP adv ap np = ap ** {
|
CAdvAP adv ap np = ap ** {
|
||||||
s = \\n => adv.s ++ ap.s ! n ;
|
s = \\n,c => adv.s ++ ap.s ! n ! c ;
|
||||||
compar = ap.compar ++ adv.p ++ applyAdp (caseAdp Nom) np ;
|
compl = \\n => ap.compl ! n ++ adv.p ++ applyAdp (caseAdp Nom) np ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- The superlative use is covered in $Ord$.
|
-- The superlative use is covered in $Ord$.
|
||||||
@@ -54,7 +60,7 @@ concrete AdjectiveHun of Adjective = CatHun ** open ResHun, Prelude in {
|
|||||||
|
|
||||||
-- : AdA -> AP -> AP ;
|
-- : AdA -> AP -> AP ;
|
||||||
AdAP ada ap = ap ** {
|
AdAP ada ap = ap ** {
|
||||||
s = \\af => ada.s ++ ap.s ! af ;
|
s = \\n,c => ada.s ++ ap.s ! n ! c ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|
||||||
@@ -62,7 +68,7 @@ concrete AdjectiveHun of Adjective = CatHun ** open ResHun, Prelude in {
|
|||||||
|
|
||||||
-- : AP -> Adv -> AP ; -- warm by nature
|
-- : AP -> Adv -> AP ; -- warm by nature
|
||||||
AdvAP ap adv = ap ** {
|
AdvAP ap adv = ap ** {
|
||||||
s = \\af => ap.s ! af ++ adv.s ;
|
s = \\n,c => ap.s ! n ! c ++ adv.s ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ concrete CatHun of Cat = CommonX - [Adv] ** open ResHun, Prelude in {
|
|||||||
Quant = ResHun.Quant ;
|
Quant = ResHun.Quant ;
|
||||||
Num = ResHun.Num ;
|
Num = ResHun.Num ;
|
||||||
Ord = {
|
Ord = {
|
||||||
s : Number => Str ; -- Number => Case => Str ; -- Ord can come from AP and become AP again
|
s : Number => Case => Str ; -- Ord can come from AP and become AP again
|
||||||
n : Number -- Ord can come from Num, which has inherent number
|
n : Number -- Ord can come from Num, which has inherent number
|
||||||
} ;
|
} ;
|
||||||
DAP = ResHun.Determiner ;
|
DAP = ResHun.Determiner ;
|
||||||
|
|||||||
@@ -20,18 +20,18 @@ lin
|
|||||||
|
|
||||||
-- Adjectival phrases
|
-- Adjectival phrases
|
||||||
lincat
|
lincat
|
||||||
[AP] = {s1,s2 : Number => Str} ;
|
[AP] = {s1,s2 : Number => Case => Str} ;
|
||||||
|
|
||||||
lin
|
lin
|
||||||
BaseAP x y =
|
BaseAP x y =
|
||||||
-- Don't try to have discontinuous comparative forms
|
-- Don't try to have discontinuous comparative forms
|
||||||
let xCont : AP = x ** {s = \\n => x.s ! n ++ x.compar} ;
|
let xCont : AP = x ** {s = \\n,c => x.s ! n ! c ++ x.compl ! n} ;
|
||||||
yCont : AP = y ** {s = \\n => y.s ! n ++ y.compar} ;
|
yCont : AP = y ** {s = \\n,c => y.s ! n ! c ++ y.compl ! n} ;
|
||||||
in twoTable Number xCont yCont ;
|
in twoTable2 Number Case xCont yCont ;
|
||||||
ConsAP a as =
|
ConsAP a as =
|
||||||
let aCont : AP = a ** {s = \\n => a.s ! n ++ a.compar} ;
|
let aCont : AP = a ** {s = \\n,c => a.s ! n ! c ++ a.compl ! n} ;
|
||||||
in consrTable Number comma aCont as ;
|
in consrTable2 Number Case comma aCont as ;
|
||||||
ConjAP co as = conjunctDistrTable Number co as ** {compar = []} ;
|
ConjAP co as = conjunctDistrTable2 Number Case co as ** {compl = \\_ => []} ;
|
||||||
|
|
||||||
-- Noun phrases
|
-- Noun phrases
|
||||||
lincat
|
lincat
|
||||||
|
|||||||
@@ -16,17 +16,18 @@ concrete NounHun of Noun = CatHun ** open
|
|||||||
True => det.s ! c ;
|
True => det.s ! c ;
|
||||||
False => det.s ! Nom
|
False => det.s ! Nom
|
||||||
} ++ case <p,det.dt> of {
|
} ++ case <p,det.dt> of {
|
||||||
<NotPossessed, NoPoss>
|
|
||||||
=> standalone ;
|
|
||||||
<_, DetPoss _>
|
<_, DetPoss _>
|
||||||
=> possessed ;
|
=> possessed ;
|
||||||
<Poss per rnum, NoPoss>
|
<NotPossessed, _>
|
||||||
|
=> standalone ;
|
||||||
|
<Poss per rnum, _>
|
||||||
=> let pron : Pronoun = pronTable ! <per,rnum> ; -- Possessor's number
|
=> let pron : Pronoun = pronTable ! <per,rnum> ; -- Possessor's number
|
||||||
dnum : CatHun.Num = case det.n of { -- Possessed's number
|
dnum : CatHun.Num = case det.n of { -- Possessed's number
|
||||||
Sg => NumSg ; Pl => NumPl } ;
|
Sg => NumSg ; Pl => NumPl } ;
|
||||||
in caseFromPossStem cn (DetQuant (PossPron pron) dnum) c
|
in caseFromPossStem cn (DetQuant (PossPron pron) dnum) c
|
||||||
} ++ cn.compl ! det.n ! c ;
|
} ++ cn.compl ! det.n ! c ;
|
||||||
agr = <P3,det.n> ;
|
agr = <P3,det.n> ;
|
||||||
|
objdef = dt2objdef det.dt ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : PN -> NP ;
|
-- : PN -> NP ;
|
||||||
@@ -96,15 +97,14 @@ concrete NounHun of Noun = CatHun ** open
|
|||||||
<True,True> => [] ;
|
<True,True> => [] ;
|
||||||
_ => quant.sp ! num.n ! c }
|
_ => quant.sp ! num.n ! c }
|
||||||
++ num.s ! Indep ;
|
++ num.s ! Indep ;
|
||||||
dt = case quant.qt of { QuantPoss stem => DetPoss stem ;
|
dt = qt2dt quant.qt ;
|
||||||
_ => NoPoss } ;
|
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : Quant -> Num -> Ord -> Det ; -- these five best
|
-- : Quant -> Num -> Ord -> Det ; -- these five best
|
||||||
DetQuantOrd quant num ord =
|
DetQuantOrd quant num ord =
|
||||||
let theseFive = DetQuant quant num in theseFive ** {
|
let theseFive = DetQuant quant num in theseFive ** {
|
||||||
s = \\c => theseFive.s ! c ++ ord.s ! num.n ;
|
s = \\c => theseFive.s ! c ++ ord.s ! num.n ! Nom ;
|
||||||
sp = \\c => theseFive.sp ! c ++ ord.s ! num.n ;
|
sp = \\c => theseFive.sp ! c ++ ord.s ! num.n ! Nom ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- Whether the resulting determiner is singular or plural depends on the
|
-- Whether the resulting determiner is singular or plural depends on the
|
||||||
@@ -125,7 +125,7 @@ concrete NounHun of Noun = CatHun ** open
|
|||||||
-- : Digits -> Card ;
|
-- : Digits -> Card ;
|
||||||
NumDigits dig = dig ** {
|
NumDigits dig = dig ** {
|
||||||
s = \\place => dig.s ! NCard ;
|
s = \\place => dig.s ! NCard ;
|
||||||
numtype = IsDig ;
|
numtype = IsNum ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : Numeral -> Card ;
|
-- : Numeral -> Card ;
|
||||||
@@ -145,7 +145,9 @@ concrete NounHun of Noun = CatHun ** open
|
|||||||
-}
|
-}
|
||||||
-- : A -> Ord ;
|
-- : A -> Ord ;
|
||||||
OrdSuperl a = {
|
OrdSuperl a = {
|
||||||
s = a.s ! Superl ;
|
s = \\n,c =>
|
||||||
|
let adj : Noun = (a ** {s = a.s ! Superl}) in
|
||||||
|
caseFromStem glue adj c n ;
|
||||||
n = Sg -- ?? is this meaningful?
|
n = Sg -- ?? is this meaningful?
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
@@ -158,23 +160,20 @@ concrete NounHun of Noun = CatHun ** open
|
|||||||
DefArt = mkQuant "a" "a" ** {
|
DefArt = mkQuant "a" "a" ** {
|
||||||
s,
|
s,
|
||||||
sp = \\_,_ => pre {"a" ; "az" / v } ;
|
sp = \\_,_ => pre {"a" ; "az" / v } ;
|
||||||
qt = Article ;
|
qt = DefQuant ;
|
||||||
objdef = Def ;
|
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : Quant
|
-- : Quant
|
||||||
IndefArt = mkQuant "egy" [] ** {
|
IndefArt = mkQuant "egy" [] ** {
|
||||||
s = \\n,_ => case n of {Sg => "egy" ; Pl => []} ;
|
s = \\n,_ => case n of {Sg => "egy" ; Pl => []} ;
|
||||||
sp = \\n,_ => case n of {Sg => "egy" ; Pl => "sok"} ;
|
sp = \\n,_ => case n of {Sg => "egy" ; Pl => "sok"} ;
|
||||||
qt = Article ;
|
qt = IndefArticle ;
|
||||||
objdef = Indef ;
|
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : Pron -> Quant
|
-- : Pron -> Quant
|
||||||
PossPron pron = pron ** {
|
PossPron pron = pron ** {
|
||||||
s,sp = \\_ => pron.s ;
|
s,sp = \\_ => pron.s ;
|
||||||
qt = QuantPoss (agr2PossStem pron.agr) ;
|
qt = QuantPoss (agr2pstem pron.agr) ;
|
||||||
objdef = Def ;
|
|
||||||
caseagr = False ;
|
caseagr = False ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
@@ -201,8 +200,8 @@ concrete NounHun of Noun = CatHun ** open
|
|||||||
|
|
||||||
-- : AP -> CN -> CN
|
-- : AP -> CN -> CN
|
||||||
AdjCN ap cn = cn ** {
|
AdjCN ap cn = cn ** {
|
||||||
s = \\nc => ap.s ! Sg ++ cn.s ! nc ;
|
s = \\nc => ap.s ! Sg ! Nom ++ cn.s ! nc ;
|
||||||
compl = \\n,c => ap.compar ++ cn.compl ! n ! c ;
|
compl = \\n,c => ap.compl ! n ++ cn.compl ! n ! c ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : CN -> RS -> CN ;
|
-- : CN -> RS -> CN ;
|
||||||
|
|||||||
@@ -487,18 +487,18 @@ oper
|
|||||||
Nom => harm1 [] ;
|
Nom => harm1 [] ;
|
||||||
Acc => harm3 "ot" "et" "öt" ;
|
Acc => harm3 "ot" "et" "öt" ;
|
||||||
Dat => harm "nak" "nek" ;
|
Dat => harm "nak" "nek" ;
|
||||||
Ins => harm "al" "el" ;
|
Ade => harm "nál" "nél" ;
|
||||||
Tra => harm "á" "é" ;
|
Sup => harm3 "on" "en" "ön" ;
|
||||||
Ill => harm "ba" "be" ;
|
|
||||||
Ine => harm "ban" "ben" ;
|
Ine => harm "ban" "ben" ;
|
||||||
Ela => harm "ból" "ből" ;
|
Ela => harm "ból" "ből" ;
|
||||||
|
Ins => harm "al" "el" ;
|
||||||
|
Tra => harm "á" "é" ;
|
||||||
All => harm3 "hoz" "hez" "höz" ;
|
All => harm3 "hoz" "hez" "höz" ;
|
||||||
Ade => harm "nál" "nél" ;
|
|
||||||
Abl => harm "tól" "től" ;
|
Abl => harm "tól" "től" ;
|
||||||
Sub => harm "ra" "re" ;
|
Sub => harm "ra" "re" ;
|
||||||
Sup => harm3 "on" "en" "ön" ;
|
|
||||||
Del => harm "ról" "ről" ;
|
Del => harm "ról" "ről" ;
|
||||||
Cau => harm1 "ért"
|
Cau => harm1 "ért" ;
|
||||||
|
Ill => harm "ba" "be"
|
||||||
-- Ess => harm "stul" "stül" ; -- Essive-modal 'with <the noun> and its parts'
|
-- Ess => harm "stul" "stül" ; -- Essive-modal 'with <the noun> and its parts'
|
||||||
-- Ter => harm1 "ig" ; -- Terminative 'as far as <the noun>'
|
-- Ter => harm1 "ig" ; -- Terminative 'as far as <the noun>'
|
||||||
-- For => harm1 "ként" ; -- Formal 'as <the noun>'
|
-- For => harm1 "ként" ; -- Formal 'as <the noun>'
|
||||||
|
|||||||
@@ -151,19 +151,20 @@ oper
|
|||||||
|
|
||||||
mkA = overload {
|
mkA = overload {
|
||||||
mkA : (sgnom : Str) -> A = \s -> lin A (mkAdj s) ;
|
mkA : (sgnom : Str) -> A = \s -> lin A (mkAdj s) ;
|
||||||
mkA : (sgnom,sgacc : Str) -> A = \s,_ -> lin A (mkAdj s) ; -- TODO
|
mkA : (sgnom,sgacc : Str) -> A = \n,a ->
|
||||||
|
lin A (mkAdj2 n (regNounNomAcc n a)) ;
|
||||||
-- mkA : (kiga : Str) -> (jakda : A) -> A = \kiga,jakda ->
|
-- mkA : (kiga : Str) -> (jakda : A) -> A = \kiga,jakda ->
|
||||||
-- jakda ** {s = \\af => kiga ++ jakda.s ! af} ;
|
-- jakda ** {s = \\af => kiga ++ jakda.s ! af} ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkA2 = overload {
|
mkA2 = overload {
|
||||||
mkA2 : A -> A2 = \a -> a ** {c2 = casePrep Nom} ;
|
mkA2 : A -> A2 = \a -> a ** {c2 = casePrep Nom ; isPost = False} ;
|
||||||
mkA2 : Str -> Prep -> A2 = \s,p ->
|
mkA2 : Str -> Prep -> A2 = \s,p ->
|
||||||
lin A2 {s = (mkAdj s).s ; c2 = p} ;
|
lin A2 ((mkAdj s) ** {c2 = p ; isPost = False}) ;
|
||||||
mkA2 : Str -> Case -> A2 = \s,c ->
|
mkA2 : Str -> Case -> A2 = \s,c ->
|
||||||
lin A2 {s = (mkAdj s).s ; c2 = casePrep c} ;
|
lin A2 ((mkAdj s) ** {c2 = casePrep c ; isPost = False}) ;
|
||||||
mkA2 : A -> Prep -> A2 = \a,p ->
|
mkA2 : A -> Prep -> A2 = \a,p ->
|
||||||
lin A2 (a ** {c2 = p}) ;
|
lin A2 (a ** {c2 = p ; isPost = False}) ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkV = overload {
|
mkV = overload {
|
||||||
|
|||||||
@@ -18,13 +18,15 @@ oper
|
|||||||
|
|
||||||
param
|
param
|
||||||
QuantType =
|
QuantType =
|
||||||
Article -- Needed to prevent "a 2 cars"
|
IndefArticle -- Needed to prevent "a 2 cars"
|
||||||
| Other -- Not poss, not article
|
| IndefQuant -- Not IndefArt, not poss, not def
|
||||||
|
| DefQuant
|
||||||
| QuantPoss PossStem -- Which possessive stem it takes
|
| QuantPoss PossStem -- Which possessive stem it takes
|
||||||
;
|
;
|
||||||
|
|
||||||
DetType =
|
DetType =
|
||||||
NoPoss -- distinction between Article and Other no longer needed
|
DefDet -- distinction between Article and Other no longer needed
|
||||||
|
| IndefDet -- still need def or indef
|
||||||
| DetPoss PossStem -- Sill need to know which stem it takes if Poss
|
| DetPoss PossStem -- Sill need to know which stem it takes if Poss
|
||||||
;
|
;
|
||||||
|
|
||||||
@@ -33,13 +35,29 @@ param
|
|||||||
|
|
||||||
oper
|
oper
|
||||||
-- standard trick to prevent "a one car"
|
-- standard trick to prevent "a one car"
|
||||||
isIndefArt : {qt : QuantType ; objdef : ObjDef} -> Bool = \quant ->
|
isIndefArt : {qt : QuantType} -> Bool = \quant ->
|
||||||
case <quant.qt,quant.objdef> of {
|
case quant.qt of {
|
||||||
<Article,Indef> => True ;
|
IndefArticle => True ;
|
||||||
_ => False
|
_ => False
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
agr2PossStem : Person*Number -> PossStem = \pn ->
|
dt2objdef : DetType -> ObjDef = \dt -> case dt of {
|
||||||
|
IndefDet => Indef ;
|
||||||
|
_ => Def
|
||||||
|
} ;
|
||||||
|
|
||||||
|
objdef2dt : ObjDef -> DetType = \od -> case od of {
|
||||||
|
Def => DefDet ;
|
||||||
|
Indef => IndefDet
|
||||||
|
} ;
|
||||||
|
|
||||||
|
qt2dt : QuantType -> DetType = \qt -> case qt of {
|
||||||
|
QuantPoss x => DetPoss x ;
|
||||||
|
DefQuant => DefDet ;
|
||||||
|
_ => IndefDet
|
||||||
|
} ;
|
||||||
|
|
||||||
|
agr2pstem : Person*Number -> PossStem = \pn ->
|
||||||
case <pn.p1,pn.p2> of {
|
case <pn.p1,pn.p2> of {
|
||||||
<P1,Pl> => dSg_rPl1 ;
|
<P1,Pl> => dSg_rPl1 ;
|
||||||
<P3,n> => dSg_rP3 n ;
|
<P3,n> => dSg_rP3 n ;
|
||||||
@@ -65,8 +83,16 @@ param
|
|||||||
|
|
||||||
Case =
|
Case =
|
||||||
Nom | Acc | Dat
|
Nom | Acc | Dat
|
||||||
| Ill | Ine | Ela | All | Ade | Abl | Sub | Sup | Del -- Locatives
|
-- | Ill -- Locatives
|
||||||
| Cau -- Causal-final 'for the purpose of, for the reason that'
|
| Ine
|
||||||
|
| Ela
|
||||||
|
| All
|
||||||
|
| Ade
|
||||||
|
-- | Abl
|
||||||
|
-- | Sub
|
||||||
|
| Sup
|
||||||
|
-- | Del
|
||||||
|
-- | Cau -- Causal-final 'for the purpose of, for the reason that'
|
||||||
| Ins -- Instrumental
|
| Ins -- Instrumental
|
||||||
| Tra -- Translative
|
| Tra -- Translative
|
||||||
-- | Ess | Ter | For
|
-- | Ess | Ter | For
|
||||||
@@ -87,14 +113,14 @@ oper
|
|||||||
Ins => ins ;
|
Ins => ins ;
|
||||||
Tra => tra ;
|
Tra => tra ;
|
||||||
Sup => sup ;
|
Sup => sup ;
|
||||||
Sub => sub ;
|
|
||||||
Del => del ;
|
|
||||||
Ill => il ;
|
|
||||||
Ine => ine ;
|
Ine => ine ;
|
||||||
Ela => el ;
|
Ela => el ;
|
||||||
All => al ;
|
All => al ;
|
||||||
Ade => ad ;
|
Ade => ad ;
|
||||||
Abl => ab ;
|
Abl => ab ;
|
||||||
|
Sub => sub ;
|
||||||
|
Del => del ;
|
||||||
|
Ill => il ;
|
||||||
Cau => ca } ;
|
Cau => ca } ;
|
||||||
|
|
||||||
sc2case : SubjCase -> Case = \sc ->
|
sc2case : SubjCase -> Case = \sc ->
|
||||||
@@ -112,7 +138,7 @@ param
|
|||||||
|
|
||||||
CardOrd = NOrd | NCard ; -- Not used yet
|
CardOrd = NOrd | NCard ; -- Not used yet
|
||||||
|
|
||||||
NumType = NoNum | IsDig | IsNum ;
|
NumType = NoNum | IsNum ;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
isNum : {numtype : NumType} -> Bool = \nt -> case nt.numtype of {
|
isNum : {numtype : NumType} -> Bool = \nt -> case nt.numtype of {
|
||||||
|
|||||||
@@ -13,11 +13,11 @@ concrete PhraseHun of Phrase = CatHun ** open Prelude, ResHun in {
|
|||||||
-}
|
-}
|
||||||
UttIP,
|
UttIP,
|
||||||
UttNP = \np -> {s = np.s ! NotPossessed ! Nom} ;
|
UttNP = \np -> {s = np.s ! NotPossessed ! Nom} ;
|
||||||
UttVP vp = {s = vp.obj ! <P3,Sg> ++ vp.adv ++ vp.s ! VInf} ;
|
UttVP vp = {s = vp.obj ++ vp.adv ++ vp.s ! VInf} ;
|
||||||
UttAdv adv = adv ;
|
UttAdv adv = adv ;
|
||||||
UttCN cn = {s = linCN cn} ;
|
UttCN cn = {s = linCN cn} ;
|
||||||
UttCard n = {s = n.s ! Indep} ;
|
UttCard n = {s = n.s ! Indep} ;
|
||||||
UttAP ap = {s = ap.s ! Sg ++ ap.compar} ;
|
UttAP ap = {s = ap.s ! Sg ! Nom ++ ap.compl ! Sg} ;
|
||||||
UttInterj i = i ;
|
UttInterj i = i ;
|
||||||
|
|
||||||
NoPConj = {s = []} ;
|
NoPConj = {s = []} ;
|
||||||
|
|||||||
@@ -185,7 +185,6 @@ oper
|
|||||||
|
|
||||||
BaseQuant : Type = {
|
BaseQuant : Type = {
|
||||||
poss : HarmForms ; -- Quants made by PossPron need this, empty for others
|
poss : HarmForms ; -- Quants made by PossPron need this, empty for others
|
||||||
objdef : ObjDef ; -- How V2 agrees if NP with this Det is an object
|
|
||||||
caseagr : Bool ; -- If it agrees in case: "azoknak a nőknek" vs. "sok nőknek"
|
caseagr : Bool ; -- If it agrees in case: "azoknak a nőknek" vs. "sok nőknek"
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
@@ -200,8 +199,7 @@ oper
|
|||||||
mkQuant : (s,sp : Str) -> Quant = \s,sp -> {
|
mkQuant : (s,sp : Str) -> Quant = \s,sp -> {
|
||||||
s = mkCaseNoun s ;
|
s = mkCaseNoun s ;
|
||||||
sp = mkCaseNoun sp ;
|
sp = mkCaseNoun sp ;
|
||||||
qt = Other ;
|
qt = DefQuant ;
|
||||||
objdef = Def ;
|
|
||||||
caseagr = True ;
|
caseagr = True ;
|
||||||
poss = harm1 [] ;
|
poss = harm1 [] ;
|
||||||
} ;
|
} ;
|
||||||
@@ -212,7 +210,6 @@ oper
|
|||||||
s,
|
s,
|
||||||
sp : Case => Str ;
|
sp : Case => Str ;
|
||||||
n : Number ;
|
n : Number ;
|
||||||
-- numtype : NumType ; -- Whether its Num component is digit, numeral or Sg/Pl
|
|
||||||
dt : DetType ;
|
dt : DetType ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
@@ -221,9 +218,8 @@ oper
|
|||||||
sp = mkCaseNoun s ! n ;
|
sp = mkCaseNoun s ! n ;
|
||||||
n = n ;
|
n = n ;
|
||||||
numtype = NoNum ;
|
numtype = NoNum ;
|
||||||
objdef = d ;
|
|
||||||
caseagr = ca ;
|
caseagr = ca ;
|
||||||
dt = NoPoss ;
|
dt = objdef2dt d ;
|
||||||
poss = harm1 [] ;
|
poss = harm1 [] ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
@@ -305,35 +301,39 @@ oper
|
|||||||
-- Adjectives
|
-- Adjectives
|
||||||
|
|
||||||
AdjPhrase : Type = {
|
AdjPhrase : Type = {
|
||||||
s : Number => Str ;
|
s : Number => Case => Str ;
|
||||||
compar : Str -- Discontinuous: Én *nagyobb* vagyok *nálad*.
|
compl : Number => Str -- Discontinuous comparative: Én nagyobb vagyok nálad.
|
||||||
|
-- This depends on Number to allow postmodifier APs.
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
emptyAP : AdjPhrase = {
|
emptyAP : AdjPhrase = {
|
||||||
s = \\_ => [] ;
|
s = \\_,_ => [] ;
|
||||||
compar = [] ;
|
compl = \\_ => [] ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
Adjective : Type = {
|
Adjective : Type = {
|
||||||
s : Degree => Number => Str
|
s : Degree => NumCaseStem => Str ;
|
||||||
|
h : Harm ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
Adjective2 : Type = Adjective ** {
|
Adjective2 : Type = Adjective ** {
|
||||||
c2 : Adposition ;
|
c2 : Adposition ;
|
||||||
|
isPost : Bool ; -- put adjective past the thing it modifies
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkAdj : Str -> Adjective = \sg -> {
|
mkAdj : Str -> Adjective = \sgnom -> mkAdj2 sgnom (mkNoun sgnom) ;
|
||||||
s = \\d,n =>
|
|
||||||
let adj = case d of {
|
|
||||||
Compar => comparAdj sg ;
|
mkAdj2 : Str -> Noun -> Adjective = \sgnom,adjAsNoun -> adjAsNoun ** {
|
||||||
Superl => "leg" + comparAdj sg ;
|
s = \\d =>
|
||||||
_ => sg } ;
|
let adj : Noun = case d of {
|
||||||
plural = case n of {
|
Compar => mkNoun (comparAdj sgnom) ;
|
||||||
Sg => [] ;
|
Superl => mkNoun ("leg" + comparAdj sgnom) ;
|
||||||
Pl => pluralAdj adj }
|
_ => adjAsNoun } ;
|
||||||
in adj + plural
|
in adj.s ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
invarAP : Str -> AdjPhrase = \s -> emptyAP ** {s = \\_ => s} ;
|
invarAP : Str -> AdjPhrase = \s -> emptyAP ** {s = \\_,_ => s} ;
|
||||||
|
|
||||||
-- https://en.wikisource.org/wiki/Simplified_Grammar_of_the_Hungarian_Language/Adjectives
|
-- https://en.wikisource.org/wiki/Simplified_Grammar_of_the_Hungarian_Language/Adjectives
|
||||||
comparAdj : Str -> Str = \stem ->
|
comparAdj : Str -> Str = \stem ->
|
||||||
@@ -458,7 +458,7 @@ oper
|
|||||||
-- VP
|
-- VP
|
||||||
|
|
||||||
VerbPhrase : Type = Verb ** {
|
VerbPhrase : Type = Verb ** {
|
||||||
obj : Person*Number => Str ;
|
obj : Str ; -- Person*Number => Str, if we want open word order in have_V2
|
||||||
adv : Str ;
|
adv : Str ;
|
||||||
c2 : Case ; -- for RelSlash
|
c2 : Case ; -- for RelSlash
|
||||||
} ; -- TODO more fields
|
} ; -- TODO more fields
|
||||||
@@ -468,7 +468,7 @@ oper
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
useV : Verb -> VerbPhrase = \v -> v ** {
|
useV : Verb -> VerbPhrase = \v -> v ** {
|
||||||
obj = \\_ => [] ;
|
obj = [] ;
|
||||||
adv = [] ;
|
adv = [] ;
|
||||||
c2 = Acc ; -- TODO check
|
c2 = Acc ; -- TODO check
|
||||||
} ;
|
} ;
|
||||||
@@ -504,7 +504,7 @@ oper
|
|||||||
in np.s ! NotPossessed ! subjcase
|
in np.s ! NotPossessed ! subjcase
|
||||||
++ if_then_Pol p [] "nem"
|
++ if_then_Pol p [] "nem"
|
||||||
++ vp.s ! agr2vf np.agr
|
++ vp.s ! agr2vf np.agr
|
||||||
++ vp.obj ! np.agr
|
++ vp.obj -- ! np.agr
|
||||||
++ vp.adv
|
++ vp.adv
|
||||||
++ np.empty -- standard trick for prodrop+metavariable problem
|
++ np.empty -- standard trick for prodrop+metavariable problem
|
||||||
} ;
|
} ;
|
||||||
@@ -522,7 +522,7 @@ oper
|
|||||||
SCDat => Dat }
|
SCDat => Dat }
|
||||||
in rp.s ! n ! subjcase
|
in rp.s ! n ! subjcase
|
||||||
++ if_then_Pol p [] "nem"
|
++ if_then_Pol p [] "nem"
|
||||||
++ vp.obj ! <rp.agr.p1,n>
|
++ vp.obj -- ! <rp.agr.p1,n>
|
||||||
++ vp.adv
|
++ vp.adv
|
||||||
++ vp.s ! VPres rp.agr.p1 n -- variable by number
|
++ vp.s ! VPres rp.agr.p1 n -- variable by number
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ lin
|
|||||||
|
|
||||||
--2 Clauses missing object noun phrases
|
--2 Clauses missing object noun phrases
|
||||||
-- : NP -> VPSlash -> ClSlash ;
|
-- : NP -> VPSlash -> ClSlash ;
|
||||||
SlashVP np vps = predVP np (vps ** {s = vps.s ! Indef ; obj = \\_ => []}) ;
|
SlashVP np vps = predVP np (vps ** {s = vps.s ! Indef ; obj = []}) ;
|
||||||
{-
|
{-
|
||||||
-- : ClSlash -> Adv -> ClSlash ; -- (whom) he sees today
|
-- : ClSlash -> Adv -> ClSlash ; -- (whom) he sees today
|
||||||
AdvSlash cls adv = cls ** insertAdv adv cls ;
|
AdvSlash cls adv = cls ** insertAdv adv cls ;
|
||||||
|
|||||||
@@ -61,8 +61,8 @@ lin most_Predet = {s = ""} ;
|
|||||||
-}
|
-}
|
||||||
|
|
||||||
--lin every_Det =
|
--lin every_Det =
|
||||||
lin few_Det = mkDet "kevés" Def Sg False ; -- TODO check
|
lin few_Det = mkDet "kevés" Indef Sg False ;
|
||||||
lin many_Det = mkDet "sok" Def Sg False ; -- TODO check
|
lin many_Det = mkDet "sok" Indef Sg False ;
|
||||||
--lin much_Det =
|
--lin much_Det =
|
||||||
|
|
||||||
lin someSg_Det,
|
lin someSg_Det,
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ lin
|
|||||||
oper
|
oper
|
||||||
|
|
||||||
mkPN : Str -> NounPhrase = \s -> emptyNP ** {
|
mkPN : Str -> NounPhrase = \s -> emptyNP ** {
|
||||||
s = \\_ => s ;
|
s = \\_,_ => s ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
lin
|
lin
|
||||||
@@ -42,7 +42,7 @@ lin
|
|||||||
SymbNum sy = baseNum ** {s = \\_ => sy.s} ;
|
SymbNum sy = baseNum ** {s = \\_ => sy.s} ;
|
||||||
|
|
||||||
-- : Symb -> Ord ;
|
-- : Symb -> Ord ;
|
||||||
SymbOrd sy = {s = \\n => sy.s ; n=Pl} ;
|
SymbOrd sy = {s = \\n,c => sy.s ; n=Pl} ;
|
||||||
|
|
||||||
lincat
|
lincat
|
||||||
Symb, [Symb] = SS ;
|
Symb, [Symb] = SS ;
|
||||||
|
|||||||
@@ -110,10 +110,9 @@ lin
|
|||||||
-- : AP -> Comp ;
|
-- : AP -> Comp ;
|
||||||
CompAP ap = UseCopula ** {
|
CompAP ap = UseCopula ** {
|
||||||
s = \\vf => case vf of {
|
s = \\vf => case vf of {
|
||||||
VPres P3 n => ap.s ! n ;
|
VPres P3 n => ap.s ! n ! Nom ++ ap.compl ! n ;
|
||||||
VPres _ n => ap.s ! n ++ copula.s ! vf ;
|
VPres _ n => ap.s ! n ! Nom ++ copula.s ! vf ++ ap.compl ! n ;
|
||||||
_ => ap.s ! Sg ++ copula.s ! vf}
|
_ => ap.s ! Sg ! Nom ++ copula.s ! vf ++ ap.compl ! Sg } ;
|
||||||
++ ap.compar ;
|
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : CN -> Comp ;
|
-- : CN -> Comp ;
|
||||||
@@ -148,16 +147,21 @@ lin
|
|||||||
|
|
||||||
oper
|
oper
|
||||||
insertObj : ResHun.VPSlash -> NounPhrase -> VerbPhrase = \vps,np -> vps ** {
|
insertObj : ResHun.VPSlash -> NounPhrase -> VerbPhrase = \vps,np -> vps ** {
|
||||||
obj = \\agr =>
|
obj = case <vps.sc,vps.c2> of {
|
||||||
-- have_V2 needs its object possessed by the subject
|
<SCDat,Nom> => [] ;
|
||||||
case <vps.sc,vps.c2> of {
|
|
||||||
<SCDat,Nom> => np.s ! Poss agr.p1 agr.p2 ! vps.c2 ;
|
|
||||||
_ => np.s ! NotPossessed ! vps.c2 } ;
|
_ => np.s ! NotPossessed ! vps.c2 } ;
|
||||||
|
|
||||||
s = \\vf =>
|
s = \\vf =>
|
||||||
-- If verb's subject case is Dat and object Nom, verb agrees with obj.
|
-- If verb's subject case is Dat and object Nom, verb agrees with obj.
|
||||||
case <vps.sc,vps.c2> of {
|
case <vps.sc,vps.c2> of { -- have_V2 needs its object possessed by the subject
|
||||||
<SCDat,Nom> => vps.s ! np.objdef ! agr2vf np.agr;
|
<SCDat,Nom> =>
|
||||||
|
let agr : Person*Number = case vf of {
|
||||||
|
VPres p n => <p,n> ;
|
||||||
|
_ => <P3,Sg> } ;
|
||||||
|
in np.s ! Poss agr.p1 agr.p2 ! vps.c2
|
||||||
|
++ vps.s ! np.objdef ! agr2vf np.agr ;
|
||||||
|
|
||||||
|
-- Default case: Verb agrees in person and number with subject
|
||||||
_ => vps.s ! np.objdef ! vf } ;
|
_ => vps.s ! np.objdef ! vf } ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
-- LangEng: I have a cat
|
-- LangEng: I have a cat
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N)))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N)))))) NoVoc
|
||||||
LangHun: nekem van egy macskám
|
LangHun: nekem van egy macská &+ m
|
||||||
|
|
||||||
-- LangEng: I have the cat
|
-- LangEng: I have the cat
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant DefArt NumSg) (UseN cat_N)))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant DefArt NumSg) (UseN cat_N)))))) NoVoc
|
||||||
LangHun: nekem van a macskám
|
LangHun: nekem van a macská &+ m
|
||||||
|
|
||||||
--In this case we don't have to use plural
|
--In this case we don't have to use plural
|
||||||
-- LangEng: I have many cats
|
-- LangEng: I have many cats
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN many_Det (UseN cat_N)))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN many_Det (UseN cat_N)))))) NoVoc
|
||||||
LangHun: nekem van sok macskám
|
LangHun: nekem van sok macská &+ m
|
||||||
|
|
||||||
-- LangEng: I have some cats
|
-- LangEng: I have some cats
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN somePl_Det (UseN cat_N)))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a have_V2) (DetCN somePl_Det (UseN cat_N)))))) NoVoc
|
||||||
LangHun: nekem van néhány macskám
|
LangHun: nekem van néhány macská &+ m
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant this_Quant NumSg) (UseN apple_N)))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant this_Quant NumSg) (UseN apple_N)))))) NoVoc
|
||||||
LangEng: I see this apple
|
LangEng: I see this apple
|
||||||
LangHun: én látom ezt az almát
|
LangHun: én látom ezt az almá &+ t
|
||||||
|
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant this_Quant NumPl) (UseN apple_N)))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant this_Quant NumPl) (UseN apple_N)))))) NoVoc
|
||||||
LangEng: I see these apples
|
LangEng: I see these apples
|
||||||
@@ -20,11 +20,11 @@ LangHun: én látom ezeket
|
|||||||
|
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN somePl_Det (UseN apple_N)))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN somePl_Det (UseN apple_N)))))) NoVoc
|
||||||
LangEng: I see some apples
|
LangEng: I see some apples
|
||||||
LangHun: én látok néhány almát
|
LangHun: én látok néhány almá &+ t
|
||||||
|
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN somePl_Det (AdjCN (PositA red_A) (UseN apple_N))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN somePl_Det (AdjCN (PositA red_A) (UseN apple_N))))))) NoVoc
|
||||||
LangEng: I see some red apples
|
LangEng: I see some red apples
|
||||||
LangHun: én látok néhány piros almát
|
LangHun: én látok néhány piros almá &+ t
|
||||||
|
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetNP somePl_Det))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetNP somePl_Det))))) NoVoc
|
||||||
LangEng: I see some
|
LangEng: I see some
|
||||||
@@ -32,8 +32,8 @@ LangHun: én látok néhányat
|
|||||||
|
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN few_Det (AdjCN (PositA red_A) (UseN apple_N))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN few_Det (AdjCN (PositA red_A) (UseN apple_N))))))) NoVoc
|
||||||
LangEng: I see few red apples
|
LangEng: I see few red apples
|
||||||
LangHun: én látok kevés piros almát
|
LangHun: én látok kevés piros almá &+ t
|
||||||
|
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN many_Det (AdjCN (PositA red_A) (UseN apple_N))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN many_Det (AdjCN (PositA red_A) (UseN apple_N))))))) NoVoc
|
||||||
LangEng: I see many red apples
|
LangEng: I see many red apples
|
||||||
LangHun: én látok sok piros almát
|
LangHun: én látok sok piros almá &+ t
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ Lang: MassNP (UseN apple_N)
|
|||||||
LangHun: alma
|
LangHun: alma
|
||||||
|
|
||||||
Lang: PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (UseN apple_N)))
|
Lang: PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (UseN apple_N)))
|
||||||
LangHun: én látok egy almát
|
LangHun: én látok egy almá &+ t
|
||||||
|
|
||||||
Lang: PrepNP on_Prep (DetCN (DetQuant IndefArt NumSg) (UseN apple_N))
|
Lang: PrepNP on_Prep (DetCN (DetQuant IndefArt NumSg) (UseN apple_N))
|
||||||
LangHun: egy almán
|
LangHun: egy almán
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ Lang: MassNP (UseN man_N)
|
|||||||
LangHun: férfi
|
LangHun: férfi
|
||||||
|
|
||||||
Lang: PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (UseN man_N)))
|
Lang: PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (UseN man_N)))
|
||||||
LangHun: én látok egy férfit
|
LangHun: én látok egy férfi &+ t
|
||||||
|
|
||||||
Lang: PrepNP on_Prep (DetCN (DetQuant IndefArt NumSg) (UseN man_N))
|
Lang: PrepNP on_Prep (DetCN (DetQuant IndefArt NumSg) (UseN man_N))
|
||||||
LangHun: egy férfin
|
LangHun: egy férfin
|
||||||
|
|||||||
@@ -6,39 +6,39 @@
|
|||||||
|
|
||||||
-- LangEng: I see a man that flies
|
-- LangEng: I see a man that flies
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))))))))) NoVoc
|
||||||
LangHun: én látok egy férfit ami repül
|
LangHun: én látok egy férfi &+ t ami repül
|
||||||
|
|
||||||
-- LangEng: I see the man that flies
|
-- LangEng: I see the man that flies
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))))))))) NoVoc
|
||||||
LangHun: én látom a férfit ami repül
|
LangHun: én látom a férfi &+ t ami repül
|
||||||
|
|
||||||
-- LangEng: I see the man that sees a cat
|
-- LangEng: I see the man that sees a cat
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
||||||
LangHun: én látom a férfit ami egy macskát lát
|
LangHun: én látom a férfi &+ t ami egy macská &+ t lát
|
||||||
|
|
||||||
-- LangEng: I see the man that sees the cat
|
-- LangEng: I see the man that sees the cat
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
||||||
LangHun: én látom a férfit ami a macskát látja
|
LangHun: én látom a férfi &+ t ami a macská &+ t látja
|
||||||
|
|
||||||
-- LangEng: I see the man that has a cat
|
-- LangEng: I see the man that has a cat
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
||||||
LangHun: én látom a férfit aminek egy macskája van
|
LangHun: én látom a férfi &+ t aminek egy macskáj &+ a van
|
||||||
|
|
||||||
-- LangEng: I see the man that has the cat
|
-- LangEng: I see the man that has the cat
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant DefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant DefArt NumSg) (UseN cat_N))))))))))) NoVoc
|
||||||
LangHun: én látom a férfit aminek megvan a macska
|
LangHun: én látom a férfi &+ t aminek megvan a macska
|
||||||
-- vet inte riktigt hur jag ska tänka med "the cat", tyckte det kändes mer rätt med "meg-" konstruktionen
|
-- vet inte riktigt hur jag ska tänka med "the cat", tyckte det kändes mer rätt med "meg-" konstruktionen
|
||||||
|
|
||||||
-- LangEng: I see the cat that flies and that is red
|
-- LangEng: I see the cat that flies and that is red
|
||||||
-- Do we need copula in "is red" or is it still fine without?
|
-- Do we need copula in "is red" or is it still fine without?
|
||||||
-- This constructor repeats amit, we have other constructors that don't. I think we don't need it
|
-- This constructor repeats amit, we have other constructors that don't. I think we don't need it
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (ConjRS and_Conj (BaseRS (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseComp (CompAP (PositA red_A))))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (ConjRS and_Conj (BaseRS (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseComp (CompAP (PositA red_A))))))))))))) NoVoc
|
||||||
LangHun: én látom a macskát ami repül és piros
|
LangHun: én látom a macská &+ t ami repül és piros
|
||||||
--skulle dock byta plats på "piros" och "repül"
|
--skulle dock byta plats på "piros" och "repül"
|
||||||
|
|
||||||
-- LangEng: I see the man that flies and that has a cat
|
-- LangEng: I see the man that flies and that has a cat
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (ConjRS and_Conj (BaseRS (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N))))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (ConjRS and_Conj (BaseRS (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (ComplSlash (SlashV2a have_V2) (DetCN (DetQuant IndefArt NumSg) (UseN cat_N))))))))))))) NoVoc
|
||||||
LangHun: én látom a férfit ami repül és aminek egy macskája van
|
LangHun: én látom a férfi &+ t ami repül és aminek egy macskáj &+ a van
|
||||||
|
|
||||||
|
|
||||||
-------------------------------------------------------------
|
-------------------------------------------------------------
|
||||||
@@ -47,26 +47,26 @@ LangHun: én látom a férfit ami repül és aminek egy macskája van
|
|||||||
|
|
||||||
-- LangEng: I see the man that the cat sees
|
-- LangEng: I see the man that the cat sees
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN cat_N)) (SlashV2a see_V2)))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN cat_N)) (SlashV2a see_V2)))))))))) NoVoc
|
||||||
LangHun: én látom a férfit amit a macska lát
|
LangHun: én látom a férfi &+ t amit a macska lát
|
||||||
|
|
||||||
-- LangEng: I see a man that the cat sees
|
-- LangEng: I see a man that the cat sees
|
||||||
-- Should this be "amit a macska lát"? Yes
|
-- Should this be "amit a macska lát"? Yes
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN cat_N)) (SlashV2a see_V2)))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (RelCN (UseN man_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN cat_N)) (SlashV2a see_V2)))))))))) NoVoc
|
||||||
LangHun: én látok egy férfit amit a macska lát
|
LangHun: én látok egy férfi &+ t amit a macska lát
|
||||||
|
|
||||||
--These last cases not corrected due to "van" confusion
|
--These last cases not corrected due to "van" confusion
|
||||||
-- LangEng: I see a cat that the man has
|
-- LangEng: I see a cat that the man has
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN man_N)) (SlashV2a have_V2)))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant IndefArt NumSg) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN man_N)) (SlashV2a have_V2)))))))))) NoVoc
|
||||||
LangHun: én látok egy macskát amit a férfinak van
|
LangHun: én látok egy macská &+ t amit a férfi &+ nak van
|
||||||
|
|
||||||
-- LangEng: I see the cat that the man has
|
-- LangEng: I see the cat that the man has
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN man_N)) (SlashV2a have_V2)))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN man_N)) (SlashV2a have_V2)))))))))) NoVoc
|
||||||
LangHun: én látom a macskát amit a férfinak van
|
LangHun: én látom a macská &+ t amit a férfi &+ nak van
|
||||||
|
|
||||||
-- LangEng: I see the cat that the man has and that flies
|
-- LangEng: I see the cat that the man has and that flies
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (ConjRS and_Conj (BaseRS (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN man_N)) (SlashV2a have_V2)))) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (ComplSlash (SlashV2a see_V2) (DetCN (DetQuant DefArt NumSg) (RelCN (UseN cat_N) (ConjRS and_Conj (BaseRS (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant DefArt NumSg) (UseN man_N)) (SlashV2a have_V2)))) (UseRCl (TTAnt TPres ASimul) PPos (RelVP IdRP (UseV fly_V))))))))))) NoVoc
|
||||||
LangHun: én látom a macskát amit a férfinak van és amit repül
|
LangHun: én látom a macská &+ t amit a férfi &+ nak van és amit repül
|
||||||
|
|
||||||
-- LangEng: I am redder than the cats that those women have
|
-- LangEng: I am redder than the cats that those women have
|
||||||
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (UseComp (CompAP (ComparA red_A (DetCN (DetQuant DefArt NumPl) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant that_Quant NumPl) (UseN woman_N)) (SlashV2a have_V2)))))))))))) NoVoc
|
Lang: PhrUtt NoPConj (UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (UsePron i_Pron) (UseComp (CompAP (ComparA red_A (DetCN (DetQuant DefArt NumPl) (RelCN (UseN cat_N) (UseRCl (TTAnt TPres ASimul) PPos (RelSlash IdRP (SlashVP (DetCN (DetQuant that_Quant NumPl) (UseN woman_N)) (SlashV2a have_V2)))))))))))) NoVoc
|
||||||
LangHun: én pirosabb vagyok a macskáknál amik azoknak a nőknek vannak
|
LangHun: én pirosabb vagyok a macskák &+ nál amik azoknak a nők &+ nek vannak
|
||||||
|
|||||||
Reference in New Issue
Block a user