Files
gf-rgl/src/japanese/RelativeJap.gf
T
2012-05-07 11:31:05 +00:00

49 lines
1.8 KiB
Plaintext

concrete RelativeJap of Relative = CatJap ** open ResJap, ParadigmsJap, Prelude in {
flags coding = utf8 ;
lin
RelCl cl = {
s = \\_,st,t,p => cl.s ! Ga ! st ! t ! p ;
te = \\_,st => cl.te ! Ga ! st ;
changePolar = cl.changePolar ;
subj = cl.subj ;
pred = \\_,st,t,p => cl.pred ! st ! t ! p ;
pred_te = \\a,st => cl.pred_te ! st ;
pred_ba = \\a,st => cl.pred_ba ! st ;
missingSubj = False
} ;
RelVP rp vp = {
s = \\a,st,t,p => vp.prepositive ! st ++ rp.s ! st ++ vp.obj ! st ++
vp.prep ++ vp.verb ! a ! Plain ! t ! p ++ rp.prep ;
te = \\a,st => vp.prepositive ! st ++ rp.s ! st ++ vp.obj ! st ++
vp.prep ++ vp.te ! a ! st ++ rp.prep ;
changePolar = False ;
subj = \\part,st => vp.prepositive ! st ++ rp.s ! st ;
pred = \\a,st,t,p => vp.obj ! st ++ vp.prep ++ vp.verb ! a ! st ! t ! p ++ rp.prep ;
pred_te = \\a,st => vp.obj ! st ++ vp.prep ++ vp.te ! a ! st ++ rp.prep ;
pred_ba = \\a,st => vp.obj ! st ++ vp.prep ++ vp.ba ! a ! st ++ rp.prep ;
missingSubj = True
} ;
RelSlash rp clslash = {
s = \\_,st,t,p => rp.s ! st ++ clslash.s ! st ! t ! p ++ rp.prep ;
te = \\_,st => rp.s ! st ++ clslash.te ! st ;
changePolar = clslash.changePolar ;
subj = \\part,st => rp.s ! st ++ clslash.subj ! part ! st ;
pred = \\_,st,t,p => clslash.pred ! st ! t ! p ++ rp.prep ;
pred_te = \\a,st => clslash.pred_te ! st ++ rp.prep ;
pred_ba = \\a,st => clslash.pred_ba ! st ++ rp.prep ;
missingSubj = False
} ;
IdRP = {s = \\st => [] ; prep = []} ;
FunRP prep np rp = {
s = \\st => np.prepositive ! st ++ np.s ! st ;
prep = prep.relPrep
} ;
}