forked from GitHub/gf-core
Fin.VPSlashPrep is cyclic in the presence of empty-strinc prepositions. Therefore omitted it from ParseFin.
This commit is contained in:
@@ -122,7 +122,9 @@ clean:
|
||||
|
||||
|
||||
|
||||
Parse: ParseEng ParseBul ParseChi ParseGer ParseSwe ParseHin ParseFin ParseFre
|
||||
Parse: ParseEng ParseBul ParseChi ParseGer ParseSwe ParseHin ParseFin ParseFre Parse8
|
||||
|
||||
Parse8:
|
||||
gf -make -literal=Symb -probs=$(PROBSFILE) -name=Parse8 ParseEng.pgf ParseBul.pgf ParseChi.pgf ParseGer.pgf ParseSwe.pgf ParseHin.pgf ParseFin.pgf ParseFre.pgf
|
||||
|
||||
|
||||
|
||||
@@ -233,7 +233,7 @@ concrete ExtraFin of ExtraFinAbs = CatFin **
|
||||
kohan_Part = mkPart "kohan" "köhän" ;
|
||||
pahan_Part = mkPart "pahan" "pähän" ;
|
||||
|
||||
PassVPSlash vp = passVP vp vp.c2.c ;
|
||||
PassVPSlash vp = passVP vp vp.c2 ;
|
||||
|
||||
{- -----
|
||||
s = \\vif,ant,pol,agr => case vif of {
|
||||
|
||||
@@ -37,7 +37,7 @@ concrete IdiomFin of Idiom = CatFin **
|
||||
|
||||
ImpersCl vp = mkClause noSubj (agrP3 Sg) vp ;
|
||||
|
||||
GenericCl vp = mkClause noSubj (agrP3 Sg) (passVP vp (NPCase Nom)) ;
|
||||
GenericCl vp = mkClause noSubj (agrP3 Sg) (passVP vp (casePrep nominative)) ;
|
||||
|
||||
ProgrVP vp =
|
||||
let
|
||||
|
||||
@@ -315,9 +315,9 @@ oper
|
||||
vptyp = vp.vptyp --- missään
|
||||
} ;
|
||||
|
||||
passVP : VP -> NPForm -> VP = \vp,sc -> {
|
||||
s = {s = vp.s.s ; h = vp.s.h ; p = vp.s.p ; sc = sc} ; -- minusta pidetään ---- TODO minun päälleni katsotaan
|
||||
s2 = vp.s2 ;
|
||||
passVP : VP -> Compl -> VP = \vp,pr -> {
|
||||
s = {s = vp.s.s ; h = vp.s.h ; p = vp.s.p ; sc = pr.c} ; -- minusta pidetään ---- TODO minun katsotaan päälle
|
||||
s2 = \\b,p,a => pr.s ++ vp.s2 ! b ! p ! a ; ---- prep after verb
|
||||
ext = vp.ext ;
|
||||
adv = vp.adv ;
|
||||
vptyp = {isNeg = vp.vptyp.isNeg ; isPass = True} ;
|
||||
|
||||
@@ -91,7 +91,7 @@ concrete VerbFin of Verb = CatFin ** open Prelude, ResFin, StemFin in {
|
||||
|
||||
ReflVP v = insertObjPre False (\fin,b,agr -> appCompl fin b v.c2 (reflPron agr)) v ;
|
||||
|
||||
PassV2 v = passVP (predSV v) v.c2.c ;
|
||||
PassV2 v = passVP (predSV v) v.c2 ;
|
||||
|
||||
{- ----
|
||||
s = \\vif,ant,pol,agr => case vif of {
|
||||
|
||||
@@ -8,7 +8,8 @@ concrete ParseFin of ParseEngAbs =
|
||||
NumeralFin,
|
||||
SymbolFin [PN, Symb, String, CN, Card, NP, MkSymb, SymbPN, CNNumNP],
|
||||
ConjunctionFin,
|
||||
VerbFin - [SlashV2V, PassV2, UseCopula, ComplVV],
|
||||
VerbFin - [SlashV2V, PassV2, UseCopula, ComplVV,
|
||||
VPSlashPrep], -- with empty prepositions, a cyclic rule that leads to overgeneration
|
||||
AdverbFin,
|
||||
PhraseFin,
|
||||
SentenceFin,
|
||||
|
||||
@@ -665,9 +665,9 @@ oper
|
||||
vptyp = vp.vptyp --- missään
|
||||
} ;
|
||||
|
||||
passVP : VP -> NPForm -> VP = \vp,sc -> {
|
||||
s = {s = vp.s.s ; h = vp.s.h ; p = vp.s.p ; sc = sc} ; -- minusta pidetään ---- TODO minun päälleni katsotaan
|
||||
s2 = vp.s2 ;
|
||||
passVP : VP -> Compl -> VP = \vp,pr -> {
|
||||
s = {s = vp.s.s ; h = vp.s.h ; p = vp.s.p ; sc = pr.c} ; -- minusta pidetään ---- TODO minun katsotaan päälle
|
||||
s2 = \\b,p,a => pr.s ++ vp.s2 ! b ! p ! a ; ---- prep after verb
|
||||
ext = vp.ext ;
|
||||
adv = vp.adv ;
|
||||
vptyp = {isNeg = vp.vptyp.isNeg ; isPass = True} ;
|
||||
|
||||
Reference in New Issue
Block a user