mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-20 16:42:51 -06:00
inversions with intervening -t- for Fre, e.g. fera-t-il, parle-t-elle
This commit is contained in:
@@ -59,7 +59,7 @@ interface DiffRomance = open CommonRomance, Prelude in {
|
||||
oper dative : Case ;
|
||||
oper genitive : Case ;
|
||||
|
||||
vRefl : VType ;
|
||||
vRefl : VType -> VType ;
|
||||
isVRefl : VType -> Bool ;
|
||||
|
||||
|
||||
@@ -140,6 +140,12 @@ oper
|
||||
|
||||
oper infForm : Number -> Person -> CAgr -> CAgr -> Bool ;
|
||||
|
||||
-- AR 21/2/2013
|
||||
-- inverted clause order, only deviant in Fre where also the intervening -t- has to be taken to account
|
||||
|
||||
invertedClause :
|
||||
VType -> (RTense * Anteriority * Number * Person) -> Bool -> (Str * Str) -> (clit,fin,inf,compl,subj,ext : Str) -> Str =
|
||||
\_,_,_,neg,clit,fin,inf,compl,subj,ext -> neg.p1 ++ clit ++ fin ++ neg.p2 ++ inf ++ compl ++ subj ++ ext ;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -102,7 +102,7 @@ incomplete concrete QuestionRomance of Question =
|
||||
lincat
|
||||
QVP = ResRomance.VP ;
|
||||
lin
|
||||
ComplSlashIP vp ip = insertObject vp.c2 (heavyNP {s = ip.s ; a = ip.a ** {p = P3}}) vp ;
|
||||
ComplSlashIP vp ip = insertObject vp.c2 (heavyNP {s = ip.s ; a = {g = ip.a.g ; n = ip.a.n ; p = P3}}) vp ;
|
||||
AdvQVP vp adv = insertAdv adv.s vp ;
|
||||
AddAdvQVP vp adv = insertAdv adv.s vp ;
|
||||
|
||||
|
||||
@@ -138,7 +138,7 @@ oper
|
||||
} ;
|
||||
|
||||
insertRefl : VP -> VP = \vp -> {
|
||||
s = {s = vp.s.s ; vtyp = vRefl} ;
|
||||
s = {s = vp.s.s ; vtyp = vRefl vp.s.vtyp} ;
|
||||
agr = VPAgrSubj ;
|
||||
clit1 = vp.clit1 ;
|
||||
clit2 = vp.clit2 ;
|
||||
@@ -229,8 +229,8 @@ oper
|
||||
ext = vp.ext ! pol ;
|
||||
|
||||
vtyp = vp.s.vtyp ;
|
||||
refl = case vtyp of {
|
||||
VRefl => reflPron num per Acc ; ---- case ?
|
||||
refl = case isVRefl vtyp of {
|
||||
True => reflPron num per Acc ; ---- case ?
|
||||
_ => []
|
||||
} ;
|
||||
clit = refl ++ vp.clit1 ++ vp.clit2 ++ vp.clit3.s ; ---- refl first?
|
||||
@@ -261,7 +261,8 @@ oper
|
||||
DDir =>
|
||||
subj ++ neg.p1 ++ clit ++ fin ++ neg.p2 ++ inf ++ compl ++ ext ;
|
||||
DInv =>
|
||||
neg.p1 ++ clit ++ fin ++ neg.p2 ++ inf ++ compl ++ subj ++ ext
|
||||
---- neg.p1 ++ clit ++ fin ++ neg.p2 ++ inf ++ compl ++ subj ++ ext
|
||||
invertedClause vp.s.vtyp <te, a, num, per> hasClit neg clit fin inf compl subj ext
|
||||
---- neg.p1 ++ clit ++ fin ++ preOrPost hasClit subj (neg.p2 ++ inf) ++ compl ++ ext ----
|
||||
}
|
||||
} ;
|
||||
@@ -276,8 +277,8 @@ oper
|
||||
inf = vp.s.s ! VInfin iform ;
|
||||
neg = vp.neg ! RPos ; --- Neg not in API
|
||||
obj = neg.p2 ++ vp.comp ! agr ++ vp.ext ! RPos ; ---- pol
|
||||
refl = case vp.s.vtyp of {
|
||||
VRefl => reflPron agr.n agr.p Acc ; ---- case ?
|
||||
refl = case isVRefl vp.s.vtyp of {
|
||||
True => reflPron agr.n agr.p Acc ; ---- case ?
|
||||
_ => []
|
||||
} ;
|
||||
in
|
||||
|
||||
@@ -94,36 +94,3 @@ incomplete concrete VerbRomance of Verb =
|
||||
} ;
|
||||
}
|
||||
|
||||
{---b
|
||||
ComplV2 v np1 = insertObject v.c2 np1 (predV v) ;
|
||||
ComplV3 v np1 np2 = insertObject v.c3 np2 (insertObject v.c2 np1 (predV v)) ;
|
||||
|
||||
ComplV2V v np vp =
|
||||
insertComplement (\\a => prepCase v.c2.c ++ infVP vp a)
|
||||
(insertObject v.c2 np (predV v)) ;
|
||||
ComplV2S v np s =
|
||||
insertExtrapos (\\b => s.s ! Indic) ---- mood
|
||||
(insertObject v.c2 np (predV v)) ;
|
||||
ComplV2Q v np q =
|
||||
insertExtrapos (\\_ => q.s ! QIndir)
|
||||
(insertObject v.c2 np (predV v)) ;
|
||||
|
||||
ComplV2A v np ap =
|
||||
let af = case v.c3.isDir of {
|
||||
True => AF np.a.g np.a.n ; -- ... bleues
|
||||
_ => AF Masc Sg -- il les peint en bleu
|
||||
}
|
||||
in
|
||||
insertComplement
|
||||
(\\a => v.c3.s ++ prepCase v.c3.c ++ ap.s ! af)
|
||||
(insertObject v.c2 np (predV v)) ;
|
||||
|
||||
ReflV2 v = case v.c2.isDir of {
|
||||
True => predV {s = v.s ; vtyp = vRefl} ;
|
||||
False => insertComplement
|
||||
(\\a => v.c2.s ++ reflPron a.n a.p v.c2.c) (predV v)
|
||||
} ;
|
||||
|
||||
UseVS, UseVQ = \vv -> {s = vv.s ; c2 = complAcc ; vtyp = vv.vtyp} ;
|
||||
-}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user