mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-06-08 06:36:32 -06:00
Latin grammar: clean up and update
This patch removes all superfluous files from the directory, especially the binary files in the doc folder. They are still available in the git repository http://github.com/daherb/GF-latin which is still the main repository for the development of the latin grammar. The GF files are updated to a state close to the one at the end of the GF Summer School 2015 where they were extended to support the MUSTE grammar.
This commit is contained in:
@@ -1,52 +1,98 @@
|
||||
concrete VerbLat of Verb = CatLat ** open ResLat,IrregLat in {
|
||||
--1 Construction rules for latin verb phrases
|
||||
concrete VerbLat of Verb = CatLat ** open (S=StructuralLat),ResLat,IrregLat in {
|
||||
|
||||
flags optimize=all_subs ;
|
||||
|
||||
lin
|
||||
UseV = predV ;
|
||||
--2 Complementization rules
|
||||
|
||||
-- UseV : V -> VP
|
||||
UseV = predV ; -- dormire
|
||||
|
||||
-- ComplVV : VV -> VP -> VP ; -- want to run
|
||||
ComplVV v vp =
|
||||
{
|
||||
fin = vp.fin ;
|
||||
inf = v.inf ;
|
||||
obj = vp.obj ;
|
||||
adj = vp.adj
|
||||
};
|
||||
|
||||
-- ComplVS : VS -> S -> VP ; -- say that she runs
|
||||
ComplVS v s = insertObj (S.that_Subj.s ++ s.s) (predV v) ;
|
||||
|
||||
-- ComplVQ : VQ -> QS -> VP ; -- wonder who runs
|
||||
ComplVQ v q = insertObj ( q.s ! QIndir) (predV v) ;
|
||||
|
||||
-- ComplVA : VA -> AP -> VP ; -- they become red
|
||||
ComplVA v ap = (predV v) ** { adj = ap.s } ;
|
||||
|
||||
-- SlashV2a : V2 -> VPSlash ; -- love (it)
|
||||
SlashV2a v = lin VP (predV2 v) ;
|
||||
|
||||
SlashV2a v = predV2 v ;
|
||||
-- Slash2V3 v np =
|
||||
-- insertObjc (\\_ => v.c2 ++ np.s ! Acc) (predV v ** {c2 = v.c3}) ;
|
||||
-- Slash3V3 v np =
|
||||
-- insertObjc (\\_ => v.c3 ++ np.s ! Acc) (predVc v) ; ----
|
||||
--
|
||||
-- ComplVV v vp = insertObj (\\a => infVP v.isAux vp a) (predVV v) ;
|
||||
-- ComplVS v s = insertObj (\\_ => conjThat ++ s.s) (predV v) ;
|
||||
-- ComplVQ v q = insertObj (\\_ => q.s ! QIndir) (predV v) ;
|
||||
-- ComplVA v ap = insertObj (ap.s) (predV v) ;
|
||||
--
|
||||
-- insertObjc (\\_ => v.c2 ++ np.s ! Acc) (predV v ** {c2 = v.c3}) ;
|
||||
|
||||
-- Slash3V3 : V3 -> NP -> VPSlash ; -- give (it) to her
|
||||
Slash3V3 v np =
|
||||
lin VP ( insertObjc ( v.c2.s ++ np.s ! v.c2.c ) ( predV3 v ) ) ;
|
||||
|
||||
-- SlashV2V v vp = insertObjc (\\a => infVP v.isAux vp a) (predVc v) ;
|
||||
|
||||
-- SlashV2S v s = insertObjc (\\_ => conjThat ++ s.s) (predVc v) ;
|
||||
-- SlashV2Q v q = insertObjc (\\_ => q.s ! QIndir) (predVc v) ;
|
||||
-- SlashV2A v ap = insertObjc (\\a => ap.s ! a) (predVc v) ; ----
|
||||
--
|
||||
|
||||
-- SlashV2Q : V2Q -> QS -> VPSlash ; -- ask (him) who came
|
||||
SlashV2Q v q = lin VP (insertObjc (q.s ! QIndir) (predV2 v) ) ;
|
||||
|
||||
-- SlashV2A : V2A -> AP -> VPSlash ; -- paint (it) red
|
||||
SlashV2A v ap = lin VP ( (predV2 v) ** { adj = ap.s } ) ;
|
||||
|
||||
-- ComplSlash : VPSlash -> NP -> VP ; -- love it
|
||||
ComplSlash vp np = -- VPSlash -> NP -> VP
|
||||
insertObj (appPrep vp.c2 np.s) vp ;
|
||||
--
|
||||
|
||||
-- SlashVV vv vp =
|
||||
-- insertObj (\\a => infVP vv.isAux vp a) (predVV vv) **
|
||||
-- {c2 = vp.c2} ;
|
||||
|
||||
-- SlashV2VNP vv np vp =
|
||||
-- insertObjPre (\\_ => vv.c2 ++ np.s ! Acc)
|
||||
-- (insertObjc (\\a => infVP vv.isAux vp a) (predVc vv)) **
|
||||
-- {c2 = vp.c2} ;
|
||||
--
|
||||
UseComp comp = -- Comp -> VP
|
||||
|
||||
--2 Other ways of forming verb phrases
|
||||
|
||||
-- ReflVP v = insertObjPre (\\a => v.c2 ++ reflPron ! a) v ;
|
||||
|
||||
-- UseComp : Comp -> VP
|
||||
UseComp comp =
|
||||
insertAdj comp.s (predV be_V) ;
|
||||
|
||||
-- AdvVP vp adv = insertObj adv.s vp ;
|
||||
-- PassV2 v = insertObj (\\_ => v.s ! VPPart) (predAux auxBe) ;
|
||||
|
||||
-- AdvVP : VP -> Adv -> VP ; -- sleep here
|
||||
AdvVP vp adv = insertObj adv.s vp ;
|
||||
|
||||
-- ExtAdvVP vp adv = vp
|
||||
|
||||
-- AdVVP adv vp = insertObj adv.s vp ;
|
||||
|
||||
-- ReflVP v = insertObjPre (\\a => v.c2 ++ reflPron ! a) v ;
|
||||
--
|
||||
-- PassV2 v = insertObj (\\_ => v.s ! VPPart) (predAux auxBe) ;
|
||||
--
|
||||
-----b UseVS, UseVQ = \vv -> {s = vv.s ; c2 = [] ; isRefl = vv.isRefl} ; -- no "to"
|
||||
--
|
||||
-- AdvVPSlash : VPSlash -> Adv -> VPSlash ; -- use (it) here
|
||||
|
||||
-- AdVVPSlash : AdV -> VPSlash -> VPSlash ; -- always use (it)
|
||||
|
||||
-- VPSlashPrep : VP -> Prep -> VPSlash ; -- live in (it)
|
||||
|
||||
--2 Complements to copula
|
||||
|
||||
-- CompAP : AP -> Comp
|
||||
CompAP ap = ap ;
|
||||
|
||||
-- CompNP np = {s = \\_ => np.s ! Acc} ;
|
||||
|
||||
-- CompAdv a = {s = \\_ => a.s} ;
|
||||
--
|
||||
|
||||
-- CompCN
|
||||
|
||||
-- UseCopula v = v
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user