mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 11:42:49 -06:00
interlingua resource
This commit is contained in:
57
lib/resource/interlingua/SentenceIna.gf
Normal file
57
lib/resource/interlingua/SentenceIna.gf
Normal file
@@ -0,0 +1,57 @@
|
||||
concrete SentenceIna of Sentence = CatIna ** open Prelude, ResIna in {
|
||||
|
||||
flags optimize=all_subs ;
|
||||
|
||||
lin
|
||||
|
||||
PredVP np vp = mkClause (np.s ! Nom) np.a vp ;
|
||||
|
||||
PredSCVP sc vp = mkClause sc.s Sp3 vp ;
|
||||
|
||||
ImpVP vp = {s = \\pol,n=> (mkClause [] {n = n; p = P2} vp).s!Pres!Simul!pol!ODir};
|
||||
|
||||
SlashV2 np v2 = mkClause (np.s ! Nom) np.a (predV v2) ** {c2 = v2.c2; p2 = v2.p2} ;
|
||||
|
||||
|
||||
SlashVVV2 np vv v2 =
|
||||
mkClause (np.s ! Nom) np.a
|
||||
(insertInvarObj (infVP (predV v2)) (predV vv)) **
|
||||
{c2 = v2.c2; p2 = v2.p2} ;
|
||||
|
||||
AdvSlash slash adv = {
|
||||
s = \\t,a,b,o => slash.s ! t ! a ! b ! o ++ adv.s ;
|
||||
c2 = slash.c2;
|
||||
p2 = slash.p2
|
||||
} ;
|
||||
|
||||
SlashPrep cl prep = cl ** {c2 = prep.c; p2 = prep.s} ;
|
||||
|
||||
SlashVS np vs slash =
|
||||
mkClause (np.s ! Nom) np.a
|
||||
(insertInvarObj ("que" ++ slash.s) (predV vs)) **
|
||||
{c2 = slash.c2; p2 = slash.p2} ;
|
||||
|
||||
|
||||
EmbedS s = {s = "que" ++ s.s} ;
|
||||
EmbedQS qs = {s = qs.s ! ODir} ;
|
||||
EmbedVP vp = {s = infVP vp} ;
|
||||
|
||||
UseCl t a p cl = {s = t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! ODir} ;
|
||||
UseQCl t a p cl = {s = \\o => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! o} ;
|
||||
UseRCl t a p cl = {s = \\agr => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! agr};
|
||||
UseSlash t a p cl={s = t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! ODir;
|
||||
c2 = cl.c2;
|
||||
p2 = cl.p2} ;
|
||||
|
||||
AdvS a s = {s = a.s ++ "," ++ s.s} ;
|
||||
|
||||
}
|
||||
|
||||
{-
|
||||
--- todo: tense of embedded Slash
|
||||
|
||||
SlashVSS np vs s =
|
||||
mkClause (np.s ! Nom) np.a
|
||||
(insertObj (\\_ => conjThat ++ s.s) (predV vs)) **
|
||||
{c2 = s.c2} ;
|
||||
-}
|
||||
Reference in New Issue
Block a user