--# -path=.:../abstract:../../prelude concrete RulesRus of Rules = CategoriesRus ** open Prelude, SyntaxRus in { lin UsePN = nameNounPhrase ; ComplA2 = complAdj ; ComplAV = complVerbAdj ; ComplObjA2V = complObjA2V ; UseA = adj2adjPhrase ; ModAP = modCommNounPhrase ; UseN = noun2CommNounPhrase ; ModGenOne = npGenDet Sg noNum ; ModGenNum = npGenDet Pl ; UseN2 = funAsCommNounPhrase ; AppN2 = appFunComm ; AppN3 = appFun2 ; PositADeg = positAdjPhrase ; ComparADeg = comparAdjPhrase ; SuperlADeg = superlAdjPhrase ; CNthatS = nounThatSentence ; UseInt i = useInt i.s; NoNum = noNum ; DetNP = detNounPhrase ; IndefOneNP = indefNounPhrase Sg ; IndefNumNP = indefNounPhraseNum Pl ; DefOneNP = indefNounPhrase Sg ; DefNumNP = indefNounPhraseNum Pl ; MassNP = indefNounPhrase Sg; NDetNP = nDetNP ; NDetNum = nDetNum ; -- The main uses of verbs and verb phrases have been moved to the -- module $Verbphrase$ (deep $VP$ nesting) and its alternative, -- $Clause$ (shallow many-place predication structure). PredAS = predAS ; PredV0 = predV0 ; -- Partial saturation. ComplA2S = complA2S ; --- VTrans = verbOfTransVerb ; UseV2 = verbOfTransVerb ; UseV2V = verbOfTransVerb ; UseV2S = verbOfTransVerb ; UseV2Q = verbOfTransVerb ; UseA2S = useA2S ; UseA2V = useA2V; -- Formation of tensed phrases. AdjPart = adjPart ; UseCl = useCl ; UseRCl = useRCl ; UseQCl = useQCl ; UseVCl = useVCl ; -- s field is superficial: PosTP t a = {s = t.s ++ a.s ; b = True ; t = t.t ; a = a.a} ; NegTP t a = {s = t.s ++ a.s ; b = False ; t = t.t ; a = a.a} ; TPresent = {s = [] ; t = ClPresent} ; TPast = {s = [] ; t = ClPast} ; TFuture = {s = [] ; t = ClFuture} ; TConditional = {s = [] ; t = ClConditional} ; ASimul = {s = [] ; a = Simul} ; AAnter = {s = [] ; a = Anter} ; PPos = {s = [] ; p = True} ; PNeg = {s = [] ; p = False} ; AdvPP x = x ; AdvAdv = advAdv ; AdjAdv a = mkAdverb (a.s ! AdvF) ; PrepNP p = prepPhrase p ; AdvVPI = adVerbPhraseInf ; AdvCN = advCommNounPhrase ; AdvNP = advNP ; AdvAP = advAdjPhrase ; AdvCl = advClause ; AdCPhr = advSentencePhr ; AdvPhr = advSentencePhr ; IdRP = identRelPron ; FunRP = funRelPron ; RelCl = relCl; RelSlash = relSlash ; ModRS = modRS ; FunIP = funIntPron ; QuestAdv = questAdverbial ; IndicPhrase = indicUtt ; QuestPhrase = interrogUtt ; ImperOne = imperUtterance Masc Sg ; ImperMany = imperUtterance Masc Pl ; IDetCN = iDetCN; SlashV2 = slashV2 ; SlashVV2 = slashVV2 ; SlashAdv = slashAdv ; IntSlash = intSlash ; QuestCl = questCl ; PosImpVP = posImpVP ; NegImpVP = negImpVP ; TwoS = twoSentence ; ConsS = consSentence ; ConjS = conjunctSentence ; ConjDS = conjunctDistrSentence ; TwoAP = twoAdjPhrase ; ConsAP = consAdjPhrase ; ConjAP = conjunctAdjPhrase ; ConjDAP = conjunctDistrAdjPhrase ; TwoNP = twoNounPhrase ; ConsNP = consNounPhrase ; ConjNP = conjunctNounPhrase ; ConjDNP = conjunctDistrNounPhrase ; ConjAdv = conjAdverb ; ConjDAdv = conjDAdverb ; TwoAdv = twoAdverb ; ConsAdv = consAdverb ; SubjQS = subjQS ; -- This rule makes a subordinate clause into a sentence adverb, which -- can be attached to e.g. noun phrases. It might even replace the -- previous subjunction rules. AdvSubj = advSubj ; SubjS = subjunctSentence ; SubjImper = subjunctImperative ; PhrNP = useNounPhrase ; PhrOneCN = useCommonNounPhrase Sg ; PhrManyCN = useCommonNounPhrase Pl ; PhrIP ip = postfixSS "?" ip ; PhrIAdv ia = postfixSS "?" ia ; OnePhr p = p ; ConsPhr = cc2 ; PhrVPI = phrVPI ; --2 Special constructs. -- -- These constructs tend to have language-specific syntactic realizations. --- IsThereNP = isThere ; ExistCN = existCN ; ExistNumCN = existNumCN ; OneNP = npOne ; --- ThereNP = thereIs ; --- WhoOne = intPronKto Sg ; --- WhoMany = intPronKto Pl ; --- WhatOne = intPronChto Sg ; --- WhatMany = intPronChto Pl ; --- NounIPOne = nounIntPron Sg ; --- NounIPMany = nounIntPron Pl ; --- SuperlNP = superlNounPhrase ; --- QuestVP = questVerbPhrase ; --- IntVP = intVerbPhrase ; --- ImperVP = imperVerbPhrase ; --- SubjQu = subjunctQuestion ; --- ModRC = modRelClause ; --- RelSuch = relSuch ; --- PosSlashV2 = slashTransVerb True ; --- NegSlashV2 = slashTransVerb False ; } ;