diff --git a/resource-1.4/hindi/ResHin.gf b/resource-1.4/hindi/ResHin.gf index b8ed909d4..f1d948332 100644 --- a/resource-1.4/hindi/ResHin.gf +++ b/resource-1.4/hindi/ResHin.gf @@ -75,7 +75,8 @@ resource ResHin = ParamX ** open Prelude in { mkVerb : (x1,_,_,_,_,_,_,_,_,_,_,_,_,_,x15 : Str) -> Verb = \inf,stem,ims,imp,ifs,ifp,pms,pmp,pfs,pfp,ss1,ss2,sp2,sp3,r -> { s = - let ga : Number -> Gender -> Str = \n,g -> (regAdjective "ga:").s ! g ! n ! Dir + let ga : Number -> Gender -> Str = \n,g -> + (regAdjective "ga:").s ! g ! n ! Dir in table { VInf => inf ; VStem => stem ; @@ -273,11 +274,22 @@ resource ResHin = ParamX ** open Prelude in { mkClause : NP -> VPH -> Clause = \np,vp -> { s = \\vt,b => let + subjagr : NPCase * Agr = case vt of { + VPPerf => case vp.subj of { + VTrans => ; + VTransPost => ; + _ => + } ; + _ => + } ; + +{- ----- this provokes a bug in gfcc AR 24/5/2008 subjagr : NPCase * Agr = case of { => ; => ; _ => } ; +-} subj = subjagr.p1 ; agr = subjagr.p2 ; vps = vp.s ! b ! VPTense vt agr ; diff --git a/resource/common/ParamX.gf b/resource/common/ParamX.gf index 5e55d4958..b08755a70 100644 --- a/resource/common/ParamX.gf +++ b/resource/common/ParamX.gf @@ -33,10 +33,19 @@ resource ParamX = open Prelude in { } ; conjNumber : Number -> Number -> Number = \m,n -> + case m of { + Sg => n ; + _ => Pl + } ; + +{- ----- this provokes a bug in gfcc AR 24/5/2008 + + conjjNumber : Number -> Number -> Number = \m,n -> case of { => Sg ; _ => Pl } ; +-} -- For persons, we let the latter argument win ("either you or I am absent" -- but "either I or you are absent"). This is not quite clear.