From f7f0112256b738a7c640c37d5bcbfc8a33bdb307 Mon Sep 17 00:00:00 2001 From: krasimir Date: Wed, 17 Feb 2010 11:07:24 +0000 Subject: added examples/SUMO --- examples/SUMO/RGLExt/ExtensionEng.gf | 58 ++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 examples/SUMO/RGLExt/ExtensionEng.gf (limited to 'examples/SUMO/RGLExt/ExtensionEng.gf') diff --git a/examples/SUMO/RGLExt/ExtensionEng.gf b/examples/SUMO/RGLExt/ExtensionEng.gf new file mode 100644 index 000000000..649288fca --- /dev/null +++ b/examples/SUMO/RGLExt/ExtensionEng.gf @@ -0,0 +1,58 @@ +concrete ExtensionEng of Extension = CatEng ** open MorphoEng, ResEng, ConjunctionEng, StructuralEng, Prelude, ParadigmsEng, Coordination,ParamBasic in { + + +lincat + PolSentence = {s : SentForm => Polarity => Str ; flag : Flag}; + [CN] = {s1,s2 : Number => Case => Str ; g : Gender} ; + StmtS = {s : Str}; +lin + +VerbToNounV2 vs = VerbToNoun vs ** {c2 = vs.c2}; + +VerbToNoun v = {s = \\_,_ => v.s ! VPresPart; + g = Masc}; + +VerbToGerundA v = {s = \\_ => v.s ! VPresPart}; + +VerbToParticipeA v = {s = \\_ => v.s ! VPPart}; + +mkPolSent cl = {s = \\f,b => case b of + {Pos => cl.s ! Pres ! Simul ! CPos ! ODir; + _ => cl.s ! Pres ! Simul ! CNeg False ! ODir}; + flag = NothingS ; + lock_PolSentence = <>}; + +sentToNoun ps = {s = \\_ => "\"" ++ ps.s ! Indep ! Pos ++ "\""; + a = agrP3 Sg}; + +ConjCN conj ss = conjunctDistrTable2 Number Case conj ss ** {g = ss.g}; + +BaseCN x y ={s1 = \\n,c => x.s ! n ! c ; + s2 = \\n,c => y.s ! n ! c ; + g = x.g} ; + +ConsCN xs x = consrTable2 Number Case comma xs x ** {g = Masc} ; + + +UsePolSentence p ps = {s = ps.s ! Indep ! p.p}; + +at_Prep = mkPrep "at" ; +per_Prep = mkPrep "per" ; + +O1 = {s = \\_ => "o1" ; + a = agrP3 Sg}; + +O2 = {s = \\_ => "o2" ; + a = agrP3 Sg}; + +O3 = {s = \\_ => "o3" ; + a = agrP3 Sg}; + +O4 = {s = \\_ => "o4" ; + a = agrP3 Sg}; + +O5 = {s = \\_ => "o5" ; + a = agrP3 Sg}; + + +} \ No newline at end of file -- cgit v1.2.3