interjections, MassNP and simple VP phrases in Slovenian

This commit is contained in:
krasimir
2016-03-28 21:03:00 +00:00
parent 9807837342
commit 6028bf7679
6 changed files with 31 additions and 2 deletions

View File

@@ -1,6 +1,9 @@
concrete CatSlv of Cat = CommonX ** open ResSlv in { concrete CatSlv of Cat = CommonX ** open ResSlv in {
lincat lincat
-- Verb
VP = ResSlv.VP ;
-- Adjective -- Adjective
AP = {s : Species => Gender => Case => Number => Str} ; AP = {s : Species => Gender => Case => Number => Str} ;

View File

@@ -2,7 +2,7 @@
concrete GrammarSlv of Grammar = concrete GrammarSlv of Grammar =
NounSlv, NounSlv,
-- VerbEng, VerbSlv,
AdjectiveSlv, AdjectiveSlv,
{- AdverbEng, {- AdverbEng,
NumeralEng, NumeralEng,

View File

@@ -25,6 +25,11 @@ concrete NounSlv of Noun = CatSlv ** open ResSlv in {
spec = Indef spec = Indef
} ; } ;
MassNP n = {
s = \\c => n.s ! Indef ! c ! Sg ;
a = {g=n.g; n=Sg; p=P3}
} ;
UseN n = {s = \\_ => n.s; g = n.g} ; UseN n = {s = \\_ => n.s; g = n.g} ;
AdjCN ap cn = { AdjCN ap cn = {

View File

@@ -286,4 +286,8 @@ oper
} ; } ;
a = {g=g; n=n; p=p} a = {g=g; n=n; p=p}
} ; } ;
mkInterj : Str -> Interj =
\s -> lin Interj {s=s} ;
} }

View File

@@ -1,4 +1,4 @@
resource ResSlv = { resource ResSlv = open ParamX in {
param param
Case = Nom | Gen | Dat | Acc | Loc | Instr; Case = Nom | Gen | Dat | Acc | Loc | Instr;
@@ -27,4 +27,15 @@ param
oper oper
Agr = {g : Gender; n : Number; p : Person} ; Agr = {g : Gender; n : Number; p : Person} ;
VP = {s : Tense => Agr => Str} ;
predV : (VForm => Str) -> VP =
\v -> { s = table {
Pres => \\a => v ! VPres a.n a.p ;
Past => \\a => "biti" ++ v ! VPastPart a.g a.n ;
Fut => \\a => "biti" ++ v ! VPastPart a.g a.n ;
Cond => \\a => "bi" ++ v ! VPastPart a.g a.n
}
} ;
} }

View File

@@ -0,0 +1,6 @@
concrete VerbSlv of Verb = CatSlv ** open ResSlv, Prelude in {
lin
UseV v = predV v.s ;
}