forked from GitHub/gf-rgl
extensions by Codex
This commit is contained in:
+31
-11
@@ -3,24 +3,33 @@ concrete SentenceTur of Sentence = CatTur ** open Prelude, ResTur in {
|
||||
lin
|
||||
PredVP np vp = {s = \\t,a,p => np.s ! Nom ++ vp.compl ++ vp.s ! Perf ! VFin t a p np.a} ;
|
||||
|
||||
PredSCVP sc vp = variants {} ;
|
||||
PredSCVP sc vp = {
|
||||
s = \\t,a,p => sc.s ++ vp.compl ++ vp.s ! Perf ! VFin t a p (agrP3 Sg)
|
||||
} ;
|
||||
|
||||
-- TODO: Check how correct this is.
|
||||
EmbedVP vp = variants {} ; -- {s = (vp.s ! Gerund Sg Acc)} ;
|
||||
EmbedVP vp = {s = vp.compl ++ vp.s ! Perf ! VInf Pos} ;
|
||||
|
||||
UseCl temp pol cl = {s = temp.s ++ pol.s ++ cl.s ! temp.t ! temp.a ! pol.p} ;
|
||||
|
||||
UseQCl _ _ = variants {} ;
|
||||
UseQCl temp pol cl = {s = temp.s ++ pol.s ++ cl.s ! temp.t ! temp.a ! pol.p} ;
|
||||
|
||||
UseRCl temp pol cl = {s = \\agr => temp.s ++ pol.s ++ cl.s ! temp.t ! temp.a ! pol.p ! agr} ;
|
||||
|
||||
SlashVP _ _ = variants {} ;
|
||||
AdvSlash _ _ = variants {} ;
|
||||
SlashPrep _ _ = variants {} ;
|
||||
SlashVS v = variants {} ;
|
||||
SlashVP np vp = {
|
||||
s = \\t,a,p => np.s ! Nom ++ vp.compl ++ mkVerbForms vp ! Perf ! VFin t a p np.a ;
|
||||
c = vp.c
|
||||
} ;
|
||||
AdvSlash cl adv = cl ** {
|
||||
s = \\t,a,p => cl.s ! t ! a ! p ++ adv.s
|
||||
} ;
|
||||
SlashPrep cl prep = cl ** {c = prep} ;
|
||||
SlashVS np v ss = {
|
||||
s = \\t,a,p => np.s ! Nom ++ ss.s ++ mkVerbForms v ! Perf ! VFin t a p np.a ;
|
||||
c = ss.c
|
||||
} ;
|
||||
|
||||
EmbedQS _ = variants {} ;
|
||||
EmbedS _ = variants {} ;
|
||||
EmbedQS q = {s = q.s} ;
|
||||
EmbedS s = {s = s.s} ;
|
||||
|
||||
ImpVP vp = {s = \\p,n => vp.compl ++ vp.s ! Perf ! VImp p n
|
||||
} ;
|
||||
@@ -29,6 +38,17 @@ concrete SentenceTur of Sentence = CatTur ** open Prelude, ResTur in {
|
||||
s = adv.s ++ s.s
|
||||
} ;
|
||||
|
||||
UseSlash _ = variants {} ;
|
||||
ExtAdvS adv s = {s = adv.s ++ "," ++ s.s} ;
|
||||
|
||||
SSubjS s1 subj s2 = {s = s1.s ++ "," ++ subj.s ++ s2.s} ;
|
||||
|
||||
AdvImp adv imp = {
|
||||
s = \\p,n => adv.s ++ imp.s ! p ! n
|
||||
} ;
|
||||
|
||||
UseSlash temp pol cl = {
|
||||
s = temp.s ++ pol.s ++ cl.s ! temp.t ! temp.a ! pol.p ;
|
||||
c = cl.c
|
||||
} ;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user