diff --git a/src/english/AdjectiveEng.gf b/src/english/AdjectiveEng.gf index e5f9ec7ba..e94a36d32 100644 --- a/src/english/AdjectiveEng.gf +++ b/src/english/AdjectiveEng.gf @@ -36,7 +36,7 @@ concrete AdjectiveEng of Adjective = CatEng ** open ResEng, Prelude in { } ; SentAP ap sc = { - s = \\a => ap.s ! a ++ sc.s ! a ; + s = \\a => ap.s ! a ++ sc.s ; isPre = False } ; diff --git a/src/english/CatEng.gf b/src/english/CatEng.gf index 3d5b19548..6b154860f 100644 --- a/src/english/CatEng.gf +++ b/src/english/CatEng.gf @@ -1,4 +1,4 @@ -concrete CatEng of Cat = CommonX - [Pol,SC,CAdv] ** open ResEng, Prelude in { +concrete CatEng of Cat = CommonX - [Pol,CAdv] ** open ResEng, Prelude in { flags optimize=all_subs ; @@ -49,7 +49,6 @@ concrete CatEng of Cat = CommonX - [Pol,SC,CAdv] ** open ResEng, Prelude in { -- Adjective AP = {s : Agr => Str ; isPre : Bool} ; - SC = {s : Agr => Str} ; -- Noun diff --git a/src/english/ExtendEng.gf b/src/english/ExtendEng.gf index 3af375bf4..ca807a7fc 100644 --- a/src/english/ExtendEng.gf +++ b/src/english/ExtendEng.gf @@ -150,7 +150,7 @@ concrete ExtendEng of Extend = isPre = vp.isSimple -- depends on whether there are complements } ; - EmbedPresPart vp = {s = \\a => infVP VVPresPart vp False Simul CPos a} ; + EmbedPresPart vp = {s = infVP VVPresPart vp False Simul CPos (agrP3 Sg)} ; PastPartAP vp = { s = \\a => vp.ad ! a ++ vp.ptp ++ vp.p ++ vp.c2 ++ vp.s2 ! a ++ vp.ext ; @@ -193,7 +193,7 @@ concrete ExtendEng of Extend = PredIAdvVP iadv vp = {s = \\t,a,p,q => iadv.s ++ infVP VVInf vp False Simul CPos (agrP3 Sg)} ; - EmbedSSlash s = {s = \\_ => "what" ++ s.s ++ s.c2} ; + EmbedSSlash s = {s = "what" ++ s.s ++ s.c2} ; NominalizeVPSlashNP vpslash np = let vp : ResEng.VP = insertObjPre (\\_ => vpslash.c2 ++ np.s ! NPAcc) vpslash ; diff --git a/src/english/ExtraEng.gf b/src/english/ExtraEng.gf index a8566890a..4f016d3a2 100644 --- a/src/english/ExtraEng.gf +++ b/src/english/ExtraEng.gf @@ -91,7 +91,7 @@ concrete ExtraEng of ExtraEngAbs = CatEng ** isPre = vp.isSimple -- depends on whether there are complements } ; - EmbedPresPart vp = {s = \\a => infVP VVPresPart vp False Simul CPos a} ; --- agr + EmbedPresPart vp = {s = infVP VVPresPart vp False Simul CPos (agrP3 Sg)} ; --- agr UttVPShort vp = {s = infVP VVAux vp False Simul CPos (agrP3 Sg)} ; diff --git a/src/english/NounEng.gf b/src/english/NounEng.gf index cedb12cd4..2c52ee838 100644 --- a/src/english/NounEng.gf +++ b/src/english/NounEng.gf @@ -149,7 +149,7 @@ concrete NounEng of Noun = CatEng ** open MorphoEng, ResEng, Prelude in { } ; AdvCN cn ad = {s = \\n,c => cn.s ! n ! c ++ ad.s ; g = cn.g} ; - SentCN cn sc = {s = \\n,c => cn.s ! n ! c ++ sc.s ! agrgP3 n cn.g ; g = cn.g} ; + SentCN cn sc = {s = \\n,c => cn.s ! n ! c ++ sc.s ; g = cn.g} ; ApposCN cn np = {s = \\n,c => cn.s ! n ! Nom ++ np.s ! NCase c ; g = cn.g} ; diff --git a/src/english/SentenceEng.gf b/src/english/SentenceEng.gf index 38a7ce129..a3546ebdb 100644 --- a/src/english/SentenceEng.gf +++ b/src/english/SentenceEng.gf @@ -6,7 +6,7 @@ concrete SentenceEng of Sentence = CatEng ** open Prelude, ResEng in { PredVP np vp = mkClause (np.s ! npNom) np.a vp ; - PredSCVP sc vp = let a = agrP3 Sg in mkClause (sc.s ! a) a vp ; + PredSCVP sc vp = mkClause sc.s (agrP3 Sg) vp ; ImpVP vp = { s = \\pol,n => @@ -37,9 +37,9 @@ concrete SentenceEng of Sentence = CatEng ** open Prelude, ResEng in { (insertObj (\\_ => conjThat ++ slash.s) (predV vs)) ** {c2 = slash.c2} ; - EmbedS s = {s = \\_ => conjThat ++ s.s} ; - EmbedQS qs = {s = \\_ => qs.s ! QIndir} ; - EmbedVP vp = {s = \\a => infVP VVInf vp False Simul CPos a} ; + EmbedS s = {s = conjThat ++ s.s} ; + EmbedQS qs = {s = qs.s ! QIndir} ; + EmbedVP vp = {s = infVP VVInf vp False Simul CPos (agrP3 Sg)} ; UseCl t p cl = { s = t.s ++ p.s ++ cl.s ! t.t ! t.a ! ctr p.p ! oDir