mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-30 10:28:53 -06:00
pos-neg and ExistCN in Finnish
This commit is contained in:
@@ -1,7 +1,10 @@
|
||||
--# -path=.:../common:../abstract
|
||||
|
||||
concrete ExtendFin of Extend =
|
||||
CatFin ** ExtendFunctor - [VPI2,VPS2,MkVPS2,ConjVPS2,ComplVPS2,MkVPI2,ConjVPI2,ComplVPI2,ComplVPIVV]
|
||||
CatFin ** ExtendFunctor - [
|
||||
VPI2,VPS2,MkVPS2,ConjVPS2,ComplVPS2,MkVPI2,ConjVPI2,ComplVPI2,ComplVPIVV
|
||||
,ExistCN, ExistMassCN
|
||||
]
|
||||
with
|
||||
(Grammar = GrammarFin) **
|
||||
|
||||
@@ -15,6 +18,26 @@ concrete ExtendFin of Extend =
|
||||
MorphoFin,
|
||||
ParadigmsFin in {
|
||||
|
||||
lin
|
||||
ExistCN cn =
|
||||
let
|
||||
pos = ExistNP (DetCN (DetQuant IndefArt NumSg) cn) ;
|
||||
neg = ExistNP (partCN cn) ;
|
||||
in posNegClause pos neg ;
|
||||
ExistMassCN cn = ExistNP (partCN cn) ;
|
||||
|
||||
oper
|
||||
partCN : CN -> GrammarFin.NP ;
|
||||
partCN cn =
|
||||
let
|
||||
acn = DetCN (DetQuant IndefArt NumSg) cn
|
||||
in acn ** {
|
||||
s = table {
|
||||
NPCase Nom | NPAcc => acn.s ! NPCase ResFin.Part ;
|
||||
c => acn.s ! c
|
||||
}
|
||||
} ;
|
||||
|
||||
|
||||
lincat
|
||||
VPS = {s : Agr => Str } ;
|
||||
|
||||
@@ -305,7 +305,13 @@ oper
|
||||
|
||||
glueTok : Str -> Str = \s -> "&+" ++ s ;
|
||||
|
||||
|
||||
-- for pos/neg variation other than just negation word, e.g. case in "on ongelma"/"ei ole ongelmaa"
|
||||
posNegClause : Clause -> Clause -> Clause = \pos,neg -> {
|
||||
s = \\t,a,b,o => case b of {
|
||||
Pos => pos.s ! t ! a ! b ! o ;
|
||||
_ => neg.s ! t ! a ! b ! o
|
||||
}
|
||||
} ;
|
||||
-- This is used for subjects of passives: therefore isFin in False.
|
||||
|
||||
subjForm : NP -> SubjCase -> Polarity -> Str = \np,sc,b ->
|
||||
|
||||
Reference in New Issue
Block a user