mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-24 02:12:50 -06:00
conjunction in Slovenian
This commit is contained in:
@@ -31,7 +31,7 @@ lincat
|
|||||||
Numeral = {s : Gender => Case => Str ; n : NumAgr} ;
|
Numeral = {s : Gender => Case => Str ; n : NumAgr} ;
|
||||||
|
|
||||||
-- Structural
|
-- Structural
|
||||||
Conj = {s : Str} ;
|
Conj = {s : Str; n : Number} ;
|
||||||
Prep = {s : Str; c : Case} ;
|
Prep = {s : Str; c : Case} ;
|
||||||
|
|
||||||
-- Open lexical classes, e.g. Lexicon
|
-- Open lexical classes, e.g. Lexicon
|
||||||
|
|||||||
@@ -2,12 +2,26 @@ concrete ConjunctionSlv of Conjunction =
|
|||||||
CatSlv ** open ResSlv in {
|
CatSlv ** open ResSlv in {
|
||||||
|
|
||||||
lin
|
lin
|
||||||
|
ConjNP conj xs = {
|
||||||
|
s = \\c => xs.s1 ! c ++ conj.s ++ xs.s2 ! c ;
|
||||||
|
a = {g = xs.a.g; n = conjNumber conj.n xs.a.n; p = xs.a.p}
|
||||||
|
} ;
|
||||||
ConjAP conj xs = {
|
ConjAP conj xs = {
|
||||||
s = \\sp,g,c,n => xs.s1 ! sp ! g ! c ! n ++ conj.s ++ xs.s2 ! sp ! g ! c ! n
|
s = \\sp,g,c,n => xs.s1 ! sp ! g ! c ! n ++ conj.s ++ xs.s2 ! sp ! g ! c ! n
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- These fun's are generated from the list cat's.
|
-- These fun's are generated from the list cat's.
|
||||||
|
|
||||||
|
BaseNP x y = {
|
||||||
|
s1 = x.s ;
|
||||||
|
s2 = y.s ;
|
||||||
|
a = conjAgr x.a y.a
|
||||||
|
} ;
|
||||||
|
ConsNP x xs = {
|
||||||
|
s1 = \\c => x.s ! c ++ "," ++ xs.s1 ! c ;
|
||||||
|
s2 = xs.s2 ;
|
||||||
|
a = conjAgr x.a xs.a
|
||||||
|
} ;
|
||||||
BaseAP x y = { s1 = x.s; s2 = y.s } ;
|
BaseAP x y = { s1 = x.s; s2 = y.s } ;
|
||||||
ConsAP x xs = {
|
ConsAP x xs = {
|
||||||
s1 = \\sp,g,c,n => x.s ! sp ! g ! c ! n ++ xs.s1 ! sp ! g ! c ! n ;
|
s1 = \\sp,g,c,n => x.s ! sp ! g ! c ! n ++ xs.s1 ! sp ! g ! c ! n ;
|
||||||
@@ -15,6 +29,7 @@ concrete ConjunctionSlv of Conjunction =
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
lincat
|
lincat
|
||||||
|
[NP] = {s1,s2 : Case => Str; a : Agr} ;
|
||||||
[AP] = {s1,s2 : Species => Gender => Case => Number => Str} ;
|
[AP] = {s1,s2 : Species => Gender => Case => Number => Str} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -387,6 +387,6 @@ oper
|
|||||||
mkInterj : Str -> Interj =
|
mkInterj : Str -> Interj =
|
||||||
\s -> lin Interj {s=s} ;
|
\s -> lin Interj {s=s} ;
|
||||||
|
|
||||||
mkConj : Str -> Conj =
|
mkConj : Str -> Number -> Conj =
|
||||||
\s -> lin Conj {s=s} ;
|
\s,n -> lin Conj {s=s; n=n} ;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,6 +30,18 @@ param
|
|||||||
oper
|
oper
|
||||||
Agr = {g : Gender; n : Number; p : Person} ;
|
Agr = {g : Gender; n : Number; p : Person} ;
|
||||||
|
|
||||||
|
conjNumber : Number -> Number -> Number = \m,n ->
|
||||||
|
case m of {
|
||||||
|
Sg => n ;
|
||||||
|
_ => Pl
|
||||||
|
} ;
|
||||||
|
|
||||||
|
conjAgr : Agr -> Agr -> Agr = \a,b -> {
|
||||||
|
g = b.g ;
|
||||||
|
n = conjNumber a.n b.n ;
|
||||||
|
p = b.p
|
||||||
|
} ;
|
||||||
|
|
||||||
VP = {s : VForm => Str; s2 : Agr => Str} ;
|
VP = {s : VForm => Str; s2 : Agr => Str} ;
|
||||||
|
|
||||||
neg : Polarity => Tense => Str =
|
neg : Polarity => Tense => Str =
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
concrete StructuralSlv of Structural = CatSlv ** open ResSlv, ParadigmsSlv in {
|
concrete StructuralSlv of Structural = CatSlv ** open ResSlv, ParadigmsSlv in {
|
||||||
|
|
||||||
lin
|
lin
|
||||||
and_Conj = mkConj "in" ;
|
and_Conj = mkConj "in" Pl ;
|
||||||
he_Pron = mkPron "òn" "njêga" "njêga" "njêmu" "njêm" "njím"
|
he_Pron = mkPron "òn" "njêga" "njêga" "njêmu" "njêm" "njím"
|
||||||
"njegôv" "njegôvega" "njegôvemu" ("njegôv"|"njegôvega") "njegôvem" "njegôvim"
|
"njegôv" "njegôvega" "njegôvemu" ("njegôv"|"njegôvega") "njegôvem" "njegôvim"
|
||||||
"njegôva" "njegôvih" "njegôvima" "njegôva" "njegôvih" "njegôvima"
|
"njegôva" "njegôvih" "njegôvima" "njegôva" "njegôvih" "njegôvima"
|
||||||
|
|||||||
Reference in New Issue
Block a user