forked from GitHub/gf-rgl
(Hun) A2 can go before or after its complement
This commit is contained in:
@@ -18,8 +18,12 @@ concrete AdjectiveHun of Adjective = CatHun ** open ResHun, Prelude in {
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- : A2 -> NP -> AP ; -- married to her
|
-- : A2 -> NP -> AP ; -- married to her
|
||||||
ComplA2 a2 np = PositA a2 ** {
|
ComplA2 a2 np = let ap : AP = PositA a2 in ap ** {
|
||||||
compl = \\n => applyAdp a2.c2 np ;
|
s = case a2.isPost of {False => ap.s ; _ => \\_,_ => []} ;
|
||||||
|
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
|
||||||
|
|||||||
@@ -158,13 +158,13 @@ oper
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
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 ((mkAdj 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 ((mkAdj 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 {
|
||||||
|
|||||||
@@ -318,6 +318,7 @@ oper
|
|||||||
|
|
||||||
Adjective2 : Type = Adjective ** {
|
Adjective2 : Type = Adjective ** {
|
||||||
c2 : Adposition ;
|
c2 : Adposition ;
|
||||||
|
isPost : Bool ; -- put adjective past the thing it modifies
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkAdj : Str -> Adjective = \sgnom -> mkAdj2 sgnom (mkNoun sgnom) ;
|
mkAdj : Str -> Adjective = \sgnom -> mkAdj2 sgnom (mkNoun sgnom) ;
|
||||||
|
|||||||
Reference in New Issue
Block a user