From 11c5687e982718f8bef73c60f0a04d335644cf34 Mon Sep 17 00:00:00 2001 From: krasimir Date: Mon, 2 May 2016 20:35:38 +0000 Subject: [PATCH] bits of sentence syntax in Slovenian --- lib/src/slovenian/CatSlv.gf | 5 ++++- lib/src/slovenian/GrammarSlv.gf | 5 +++-- lib/src/slovenian/ResSlv.gf | 10 ++++++++++ lib/src/slovenian/SentenceSlv.gf | 11 +++++++++++ 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 lib/src/slovenian/SentenceSlv.gf diff --git a/lib/src/slovenian/CatSlv.gf b/lib/src/slovenian/CatSlv.gf index e9d8df2d2..e06d4a89d 100644 --- a/lib/src/slovenian/CatSlv.gf +++ b/lib/src/slovenian/CatSlv.gf @@ -1,6 +1,9 @@ -concrete CatSlv of Cat = CommonX ** open ResSlv in { +concrete CatSlv of Cat = CommonX ** open ResSlv, (P=ParamX) in { lincat + -- Sentence + Cl = {s : P.Tense => P.Anteriority => P.Polarity => Str} ; + -- Verb VP = ResSlv.VP ; diff --git a/lib/src/slovenian/GrammarSlv.gf b/lib/src/slovenian/GrammarSlv.gf index ce49f10fe..3ec64a023 100644 --- a/lib/src/slovenian/GrammarSlv.gf +++ b/lib/src/slovenian/GrammarSlv.gf @@ -6,8 +6,9 @@ concrete GrammarSlv of Grammar = AdjectiveSlv, {- AdverbEng, NumeralEng, - SentenceEng, - QuestionEng, +-} + SentenceSlv, +{- QuestionEng, RelativeEng, ConjunctionEng,-} PhraseSlv, diff --git a/lib/src/slovenian/ResSlv.gf b/lib/src/slovenian/ResSlv.gf index 03d0f40b1..4503fa62d 100644 --- a/lib/src/slovenian/ResSlv.gf +++ b/lib/src/slovenian/ResSlv.gf @@ -38,4 +38,14 @@ oper } } ; + Clause : Type = { + s : Tense => Anteriority => Polarity => Str + } ; + + mkClause : Str -> Agr -> VP -> Clause = + \subj,agr,vp -> { + s = \\t,a,p => + subj ++ vp.s ! t ! agr + } ; + } diff --git a/lib/src/slovenian/SentenceSlv.gf b/lib/src/slovenian/SentenceSlv.gf new file mode 100644 index 000000000..4c6b16967 --- /dev/null +++ b/lib/src/slovenian/SentenceSlv.gf @@ -0,0 +1,11 @@ +concrete SentenceSlv of Sentence = CatSlv ** open Prelude, ResSlv in { + +lin + PredVP np vp = mkClause (np.s ! Nom) np.a vp ; + + UseCl t p cl = { + s = t.s ++ p.s ++ cl.s ! t.t ! t.a ! p.p + } ; + +} +