forked from GitHub/gf-core
fixes in next resource needed for Attempto
This commit is contained in:
@@ -1631,7 +1631,7 @@ incomplete resource Constructors = open Grammar in {
|
||||
|
||||
ComplV2 : V2 -> NP -> VP = \v,np -> ComplSlash (SlashV2a v) np ;
|
||||
ComplV2A : V2A -> NP -> AP -> VP = \v,np,ap -> ComplSlash (SlashV2A v ap) np ;
|
||||
ComplV3 : V3 -> NP -> NP -> VP = \v,o,d -> ComplSlash (Slash2V3 v o) d ;
|
||||
ComplV3 : V3 -> NP -> NP -> VP = \v,o,d -> ComplSlash (Slash3V3 v o) d ;
|
||||
|
||||
that_NP : NP = DetNP (DetQuant that_Quant sgNum) ;
|
||||
this_NP : NP = DetNP (DetQuant this_Quant sgNum) ;
|
||||
|
||||
@@ -149,11 +149,12 @@ oper
|
||||
mkA : (good,better,best,well : Str) -> A
|
||||
} ;
|
||||
|
||||
-- To force comparison to be formed by "more - most",
|
||||
-- the following function is used:
|
||||
|
||||
compoundA : A -> A ; -- -/more/most ridiculous
|
||||
-- Regular comparison is formed by "more - most" for words with two vowels separated
|
||||
-- and terminated by some other letters. To force this or the opposite,
|
||||
-- the following can be used:
|
||||
|
||||
compoundA : A -> A ; -- -/more/most ditto
|
||||
simpleA : A -> A ; -- young,younger,youngest
|
||||
|
||||
|
||||
--3 Two-place adjectives
|
||||
@@ -240,8 +241,9 @@ oper
|
||||
-- (transitive verbs). Notice that a particle comes from the $V$.
|
||||
|
||||
mkV2 : overload {
|
||||
mkV2 : V -> Prep -> V2 ; -- believe in
|
||||
mkV2 : V -> V2 -- kill
|
||||
mkV2 : Str -> V2 ; -- kill
|
||||
mkV2 : V -> V2 ; -- hit
|
||||
mkV2 : V -> Prep -> V2 -- believe in
|
||||
};
|
||||
|
||||
--3 Three-place verbs
|
||||
@@ -355,7 +357,11 @@ oper
|
||||
nounPN n = {s = n.s ! singular ; g = n.g ; lock_PN = <>} ;
|
||||
|
||||
mk2A a b = mkAdjective a a a b ** {lock_A = <>} ;
|
||||
regA a = regADeg a ** {lock_A = <>} ;
|
||||
regA a = case a of {
|
||||
_ + ("a" | "e" | "i" | "o" | "u" | "y") + ? + _ +
|
||||
("a" | "e" | "i" | "o" | "u" | "y") + ? + _ => compoundADeg (regADeg a) ;
|
||||
_ => regADeg a
|
||||
} ** {lock_A = <>} ;
|
||||
|
||||
mkA2 a p = a ** {c2 = p.s ; lock_A2 = <>} ;
|
||||
|
||||
@@ -506,7 +512,9 @@ oper
|
||||
} ;
|
||||
|
||||
compoundA = compoundADeg ;
|
||||
|
||||
simpleA a =
|
||||
let ad = (a.s ! AAdj Posit)
|
||||
in regADeg ad ;
|
||||
|
||||
mk5V : (go, goes, went, gone, going : Str) -> V ;
|
||||
regV : (cry : Str) -> V ;
|
||||
@@ -531,6 +539,7 @@ oper
|
||||
dirV2 : V -> V2 ;
|
||||
|
||||
mkV2 = overload {
|
||||
mkV2 : Str -> V2 = \s -> dirV2 (regV s) ;
|
||||
mkV2 : V -> Prep -> V2 = prepV2;
|
||||
mkV2 : V -> V2 = dirV2
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user