forked from GitHub/gf-rgl
support postposition adjectives
This commit is contained in:
@@ -4,7 +4,7 @@ concrete AdjectiveEng of Adjective = CatEng ** open ResEng, Prelude in {
|
|||||||
|
|
||||||
PositA a = {
|
PositA a = {
|
||||||
s = \\_ => a.s ! AAdj Posit Nom ;
|
s = \\_ => a.s ! AAdj Posit Nom ;
|
||||||
isPre = True
|
isPre = a.isPre
|
||||||
} ;
|
} ;
|
||||||
ComparA a np = {
|
ComparA a np = {
|
||||||
s = \\_ => a.s ! AAdj Compar Nom ++ "than" ++ np.s ! npNom ;
|
s = \\_ => a.s ! AAdj Compar Nom ++ "than" ++ np.s ! npNom ;
|
||||||
@@ -12,7 +12,7 @@ concrete AdjectiveEng of Adjective = CatEng ** open ResEng, Prelude in {
|
|||||||
} ;
|
} ;
|
||||||
UseComparA a = {
|
UseComparA a = {
|
||||||
s = \\_ => a.s ! AAdj Compar Nom ;
|
s = \\_ => a.s ! AAdj Compar Nom ;
|
||||||
isPre = True
|
isPre = a.isPre
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
AdjOrd ord = {
|
AdjOrd ord = {
|
||||||
|
|||||||
@@ -98,8 +98,8 @@ concrete CatEng of Cat = CommonX - [Pol,SC] ** open ResEng, Prelude in {
|
|||||||
VV = {s : VVForm => Str ; p : Str ; typ : VVType} ;
|
VV = {s : VVForm => Str ; p : Str ; typ : VVType} ;
|
||||||
V2V = Verb ** {c2,c3 : Str ; typ : VVType} ;
|
V2V = Verb ** {c2,c3 : Str ; typ : VVType} ;
|
||||||
|
|
||||||
A = {s : AForm => Str} ;
|
A = {s : AForm => Str ; isPre : Bool} ;
|
||||||
A2 = {s : AForm => Str ; c2 : Str} ;
|
A2 = {s : AForm => Str ; c2 : Str ; isPre : Bool} ;
|
||||||
|
|
||||||
N = {s : Number => Case => Str ; g : Gender} ;
|
N = {s : Number => Case => Str ; g : Gender} ;
|
||||||
N2 = {s : Number => Case => Str ; g : Gender} ** {c2 : Str} ;
|
N2 = {s : Number => Case => Str ; g : Gender} ** {c2 : Str} ;
|
||||||
@@ -119,8 +119,8 @@ concrete CatEng of Cat = CommonX - [Pol,SC] ** open ResEng, Prelude in {
|
|||||||
VV = \s -> {s = \\_ => s; p = ""; isRefl = False; typ = VVInf} ;
|
VV = \s -> {s = \\_ => s; p = ""; isRefl = False; typ = VVInf} ;
|
||||||
V2V = \s -> {s = \\_ => s; p = ""; isRefl = False; c2,c3="" ; typ = VVInf} ;
|
V2V = \s -> {s = \\_ => s; p = ""; isRefl = False; c2,c3="" ; typ = VVInf} ;
|
||||||
|
|
||||||
A = \s -> {s = \\_ => s} ;
|
A = \s -> {s = \\_ => s; isPre = True} ;
|
||||||
A2 = \s -> {s = \\_ => s; c2 = ""} ;
|
A2 = \s -> {s = \\_ => s; c2 = ""; isPre = True} ;
|
||||||
|
|
||||||
N = \s -> {s = \\_,_ => s; g = Neutr} ;
|
N = \s -> {s = \\_,_ => s; g = Neutr} ;
|
||||||
N2 = \s -> {s = \\_,_ => s; c2 = ""; g = Neutr} ;
|
N2 = \s -> {s = \\_,_ => s; c2 = ""; g = Neutr} ;
|
||||||
|
|||||||
@@ -647,7 +647,7 @@ mkInterj : Str -> Interj
|
|||||||
let ad = (a.s ! AAdj Posit Nom)
|
let ad = (a.s ! AAdj Posit Nom)
|
||||||
in regADeg ad ;
|
in regADeg ad ;
|
||||||
|
|
||||||
irregAdv a adv = lin A {s = table {AAdv => adv; aform => a.s ! aform}} ;
|
irregAdv a adv = lin A {s = table {AAdv => adv; aform => a.s ! aform}; isPre = a.isPre} ;
|
||||||
|
|
||||||
prepA2 : A -> Prep -> A2 ;
|
prepA2 : A -> Prep -> A2 ;
|
||||||
|
|
||||||
|
|||||||
@@ -141,14 +141,15 @@ param
|
|||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkAdjective : (_,_,_,_ : Str) -> {s : AForm => Str; lock_A : {}} =
|
mkAdjective : (_,_,_,_ : Str) -> {s : AForm => Str; isPre : Bool; lock_A : {}} =
|
||||||
\good,better,best,well -> lin A {
|
\good,better,best,well -> lin A {
|
||||||
s = table {
|
s = table {
|
||||||
AAdj Posit c => (regGenitiveS good) ! c ;
|
AAdj Posit c => (regGenitiveS good) ! c ;
|
||||||
AAdj Compar c => (regGenitiveS better) ! c ;
|
AAdj Compar c => (regGenitiveS better) ! c ;
|
||||||
AAdj Superl c => (regGenitiveS best) ! c ;
|
AAdj Superl c => (regGenitiveS best) ! c ;
|
||||||
AAdv => well
|
AAdv => well
|
||||||
}
|
} ;
|
||||||
|
isPre = True
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkVerb : (_,_,_,_,_ : Str) -> Verb =
|
mkVerb : (_,_,_,_,_ : Str) -> Verb =
|
||||||
|
|||||||
Reference in New Issue
Block a user