forked from GitHub/gf-rgl
added PassV2, PassVPSlash
This commit is contained in:
@@ -14,7 +14,7 @@ concrete CatTur of Cat = CommonX - [CAdv,AdN] ** open ResTur, HarmonyTur, Prelud
|
||||
NP = {s : Case => Str ; h : Harmony; a : Agr} ;
|
||||
|
||||
VP = {s : VForm => Str; compl : Str} ;
|
||||
VPSlash = {s : VForm => Str; compl : Str; c : Prep} ;
|
||||
VPSlash = Verb ** {compl : Str; c : Prep} ;
|
||||
Comp = {s : VForm => Str; compl : Str} ;
|
||||
|
||||
Pron = ResTur.Pron ;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
concrete ExtendTur of Extend = CatTur ** open ResTur in {
|
||||
concrete ExtendTur of Extend = CatTur ** open ResTur, SuffixTur, Predef in {
|
||||
|
||||
lin
|
||||
GenModNP num np cn = {
|
||||
@@ -13,4 +13,14 @@ concrete ExtendTur of Extend = CatTur ** open ResTur in {
|
||||
|
||||
PositAdVAdj a = {s = a.s ! Sg ! Nom} ;
|
||||
|
||||
PassVPSlash vps = {
|
||||
s = mkVerbForms {
|
||||
s = vps.stems ! VPass ++ BIND ++ suffixStr vps.h infinitiveSuffix ;
|
||||
stems = \\_ => vps.stems ! VPass ;
|
||||
aoristType = vps.aoristType ;
|
||||
h = vps.h ;
|
||||
} ;
|
||||
compl = []
|
||||
} ;
|
||||
|
||||
}
|
||||
|
||||
@@ -243,17 +243,23 @@ resource ParadigmsTur = open
|
||||
case getHarConP base of {
|
||||
SVow => tk 1 base ;
|
||||
_ => softBase
|
||||
}
|
||||
} ;
|
||||
h = getHarmony base
|
||||
in lin V {
|
||||
s = inf ;
|
||||
stems = table {
|
||||
VBase Hard => base ;
|
||||
VBase Soft => softBase ;
|
||||
VProg => progBase ;
|
||||
VFut => futBase
|
||||
VFuture => futBase ;
|
||||
VPass => case last base of {
|
||||
#vowel => base + "n" ;
|
||||
"l" => base + suffixStr h passiveInSuffix ;
|
||||
_ => base + suffixStr h passiveIlSuffix
|
||||
}
|
||||
} ;
|
||||
aoristType = aoristType ;
|
||||
h = getHarmony base
|
||||
h = h
|
||||
} ;
|
||||
|
||||
-- Implementation of noun paradigms
|
||||
|
||||
@@ -47,6 +47,7 @@ resource ResTur = ParamX ** open Prelude, Predef, HarmonyTur, SuffixTur in {
|
||||
VBase Softness
|
||||
| VProg
|
||||
| VFuture
|
||||
| VPass
|
||||
;
|
||||
|
||||
param
|
||||
|
||||
@@ -120,6 +120,9 @@ resource SuffixTur = open Prelude, Predef, HarmonyTur in {
|
||||
|
||||
infinitiveSuffix : Suffix = regSuffix "mek" "mek" ;
|
||||
|
||||
passiveInSuffix : Suffix = regSuffix "in" "n" ;
|
||||
passiveIlSuffix : Suffix = regSuffix "il" "l" ;
|
||||
|
||||
-- Ordinal suffix for numbers
|
||||
ordNumSuffix : Suffix = regSuffix21 "inci" "nci" ;
|
||||
-- Suffix for deriving adverb from a adjective
|
||||
|
||||
@@ -2,7 +2,7 @@ concrete VerbTur of Verb = CatTur ** open Prelude, ResTur, SuffixTur, HarmonyTur
|
||||
|
||||
lin
|
||||
UseV v = {s = mkVerbForms v; compl = []} ;
|
||||
SlashV2a v = {s = mkVerbForms v; compl = []; c = v.c} ;
|
||||
SlashV2a v = v ** {compl = []} ;
|
||||
|
||||
Slash2V3 v = variants {} ;
|
||||
Slash3V3 v = variants {} ;
|
||||
@@ -13,7 +13,8 @@ concrete VerbTur of Verb = CatTur ** open Prelude, ResTur, SuffixTur, HarmonyTur
|
||||
SlashVV v = variants {} ;
|
||||
SlashV2VNP = variants {} ;
|
||||
|
||||
ComplSlash vps np = vps ** {
|
||||
ComplSlash vps np = {
|
||||
s = mkVerbForms vps ;
|
||||
compl = vps.compl ++ vps.c.s ++ np.s ! vps.c.c ;
|
||||
} ;
|
||||
|
||||
@@ -111,7 +112,15 @@ concrete VerbTur of Verb = CatTur ** open Prelude, ResTur, SuffixTur, HarmonyTur
|
||||
compl = vp.compl ++ adv.s ;
|
||||
} ;
|
||||
|
||||
PassV2 = variants {} ;
|
||||
PassV2 v = {
|
||||
s = mkVerbForms {
|
||||
s = v.stems ! VPass ++ BIND ++ suffixStr v.h infinitiveSuffix ;
|
||||
stems = \\_ => v.stems ! VPass ;
|
||||
aoristType = v.aoristType ;
|
||||
h = v.h ;
|
||||
} ;
|
||||
compl = []
|
||||
} ;
|
||||
|
||||
oper
|
||||
olmak_V : V = lin V {
|
||||
|
||||
Reference in New Issue
Block a user