forked from GitHub/gf-core
genitives in possessives in Nor (and Scand)
This commit is contained in:
@@ -340,7 +340,7 @@ oper
|
|||||||
|
|
||||||
makeNP : Str -> Str -> Number -> Gender -> NP ;
|
makeNP : Str -> Str -> Number -> Gender -> NP ;
|
||||||
makeNP x y n g =
|
makeNP x y n g =
|
||||||
{s = table {NPPoss _ => x ; _ => y} ; a = agrP3 g n ;
|
{s = table {NPPoss _ _ => x ; _ => y} ; a = agrP3 g n ;
|
||||||
lock_NP = <>} ;
|
lock_NP = <>} ;
|
||||||
|
|
||||||
mk3A = mk3ADeg ;
|
mk3A = mk3ADeg ;
|
||||||
|
|||||||
@@ -2,10 +2,8 @@ concrete ExtraNor of ExtraNorAbs = ExtraScandNor ** open CommonScand, ResNor, Pr
|
|||||||
|
|
||||||
lin
|
lin
|
||||||
PossNP np pro = {
|
PossNP np pro = {
|
||||||
s = table {
|
s = \\c => np.s ! NPNom ++ pro.s ! NPPoss (gennumAgr np.a) (caseNP c) ;
|
||||||
NPPoss _ => np.s ! NPNom ++ pro.s ! NPPoss (gennumAgr np.a) ++ BIND ++ "s" ; ----
|
|
||||||
_ => np.s ! NPNom ++ pro.s ! NPPoss (gennumAgr np.a)
|
|
||||||
} ;
|
|
||||||
a = np.a
|
a = np.a
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -325,7 +325,7 @@ oper
|
|||||||
|
|
||||||
makeNP : Str -> Str -> Number -> Gender -> NP ;
|
makeNP : Str -> Str -> Number -> Gender -> NP ;
|
||||||
makeNP x y n g =
|
makeNP x y n g =
|
||||||
{s = table {NPPoss _ => x ; _ => y} ; a = agrP3 (ngen2gen g) n ;
|
{s = table {NPPoss _ _ => x ; _ => y} ; a = agrP3 (ngen2gen g) n ;
|
||||||
lock_NP = <>} ;
|
lock_NP = <>} ;
|
||||||
|
|
||||||
mk3A = mk3ADeg ; ---- (mkAdject a b c [] []) ** {isComp = False ; lock_A = <>} ;
|
mk3A = mk3ADeg ; ---- (mkAdject a b c [] []) ** {isComp = False ; lock_A = <>} ;
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ concrete StructuralNor of Structural = CatNor **
|
|||||||
Sg => \\_,_ => genderForms ["den der"] ["det der"] ;
|
Sg => \\_,_ => genderForms ["den der"] ["det der"] ;
|
||||||
Pl => \\_,_,_ => ["de der"]
|
Pl => \\_,_,_ => ["de der"]
|
||||||
} ;
|
} ;
|
||||||
det = DDef Indef
|
det = DDef Def
|
||||||
} ;
|
} ;
|
||||||
there_Adv = ss "der" ;
|
there_Adv = ss "der" ;
|
||||||
there7to_Adv = ss "dit" ;
|
there7to_Adv = ss "dit" ;
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ param
|
|||||||
|
|
||||||
VType = VAct | VPass | VRefl ;
|
VType = VAct | VPass | VRefl ;
|
||||||
|
|
||||||
NPForm = NPNom | NPAcc | NPPoss GenNum ;
|
NPForm = NPNom | NPAcc | NPPoss GenNum Case ;
|
||||||
|
|
||||||
RCase = RNom | RGen | RPrep Bool ;
|
RCase = RNom | RGen | RPrep Bool ;
|
||||||
|
|
||||||
@@ -82,7 +82,7 @@ oper
|
|||||||
accusative : NPForm = NPAcc ;
|
accusative : NPForm = NPAcc ;
|
||||||
|
|
||||||
caseNP : NPForm -> Case = \np -> case np of {
|
caseNP : NPForm -> Case = \np -> case np of {
|
||||||
NPPoss _ => Gen ;
|
NPPoss _ _ => Gen ;
|
||||||
_ => Nom
|
_ => Nom
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
@@ -224,7 +224,7 @@ oper
|
|||||||
s = table {
|
s = table {
|
||||||
NPNom => du ;
|
NPNom => du ;
|
||||||
NPAcc => dig ;
|
NPAcc => dig ;
|
||||||
NPPoss h => gennumForms din ditt dina ! h
|
NPPoss h c => mkCase c (gennumForms din ditt dina ! h)
|
||||||
} ;
|
} ;
|
||||||
a = {
|
a = {
|
||||||
g = g ;
|
g = g ;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ incomplete concrete ExtraScand of ExtraScandAbs = CatScand **
|
|||||||
open CommonScand,Coordination,ResScand in {
|
open CommonScand,Coordination,ResScand in {
|
||||||
lin
|
lin
|
||||||
GenNP np = {
|
GenNP np = {
|
||||||
s,sp = \\n,_,_,g => np.s ! NPPoss (gennum (ngen2gen g) n) ;
|
s,sp = \\n,_,_,g => np.s ! NPPoss (gennum (ngen2gen g) n) Nom ;
|
||||||
det = DDef Indef
|
det = DDef Indef
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ incomplete concrete NounScand of Noun =
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
PossPron p = {
|
PossPron p = {
|
||||||
s,sp = \\n,_,_,g => p.s ! NPPoss (gennum (ngen2gen g) n) ;
|
s,sp = \\n,_,_,g => p.s ! NPPoss (gennum (ngen2gen g) n) Nom ;
|
||||||
det = DDef Indef
|
det = DDef Indef
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
@@ -436,7 +436,7 @@ oper
|
|||||||
regGenPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
|
regGenPN n g = {s = \\c => mkCase c n ; g = g} ** {lock_PN = <>} ;
|
||||||
nounPN n = {s = n.s ! singular ! Indef ; g = n.g ; lock_PN = <>} ;
|
nounPN n = {s = n.s ! singular ! Indef ; g = n.g ; lock_PN = <>} ;
|
||||||
makeNP x y n g =
|
makeNP x y n g =
|
||||||
{s = table {NPPoss _ => y ; _ => x} ; a = agrP3 g n ; p = P3 ;
|
{s = table {NPPoss _ _ => y ; _ => x} ; a = agrP3 g n ; p = P3 ;
|
||||||
lock_NP = <>} ;
|
lock_NP = <>} ;
|
||||||
|
|
||||||
mkA = overload {
|
mkA = overload {
|
||||||
|
|||||||
Reference in New Issue
Block a user