-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy pathParseExtendLav.gf
More file actions
38 lines (30 loc) · 1.33 KB
/
ParseExtendLav.gf
File metadata and controls
38 lines (30 loc) · 1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
concrete ParseExtendLav of ParseExtend =
ExtendLav - [iFem_Pron, youPolFem_Pron, weFem_Pron, youPlFem_Pron, theyFem_Pron, GenNP, DetNPMasc, DetNPFem, FocusAP, N2VPSlash, A2VPSlash,
CompVP, InOrderToVP, PurposeVP, ComplGenVV, ReflRNP, ReflA2RNP, UncontractedNeg, AdvIsNPAP, ExistCN, NominalizeVPSlashNP,
PiedPipingQuestSlash, PiedPipingRelSlash], NumeralLav - [num], PunctuationX **
open Prelude, ResLav, (G=GrammarLav) in {
lin PhrUttMark pconj utt voc mark = {s = CAPIT ++ pconj.s ++ utt.s ++ voc.s ++ SOFT_BIND ++ mark.s} ;
lin UttAP p ap = { s = let a = fromAgr p.agr in ap.s ! Indef ! a.gend ! a.num ! Nom } ;
lin ComplVV vv ant pol vp = {
v = vv ;
compl = \\agr => ant.s ++ pol.s ++ buildVP vp pol.p VInf agr ;
voice = Act ;
leftVal = vv.leftVal ;
rightAgr = AgrP3 Sg Masc ;
rightPol = Pos ;
objPron = False
} ;
SlashV2V v2v ant pol vp = {
v = v2v ;
compl = \\agr => ant.s ++ pol.s ++ buildVP vp pol.p VInf agr ;
voice = Act ;
leftVal = v2v.leftVal ;
rightAgr = AgrP3 Sg Masc ;
rightPol = Pos ;
objPron = False ; -- will be overriden
rightVal = v2v.rightVal
} ;
lin EmbedVP ant pol p vp = { s = ant.s ++ pol.s ++ buildVP vp pol.p VInf p.agr } ;
lin num x = x ;
lin that_RP = G.IdRP ;
}