1
0
forked from GitHub/gf-core

finished the refactoring of Fin with unstemmed (for library use) and stemmed (for large-scale parsing use). All differences are located in the file StemFin.

This commit is contained in:
aarne
2013-08-07 09:52:40 +00:00
parent df7b8d8016
commit 4e7f3766cb
6 changed files with 30 additions and 14 deletions

View File

@@ -174,6 +174,8 @@ oper
SVForm : Type = Predef.Ints 13 ;
SVerb : Type = {s : SVForm => Str ; h : Harmony} ;
ollaSVerbForms : SVForm => Str = table SVForm ["olla";"ole";"on";"o";"olk";"olla";"oli";"oli";"olisi";"oll";"oltu";"ollu";"liene";"ole"] ;
-- used in Cat
SVerb1 = {s : SVForm => Str ; sc : NPForm ; h : Harmony ; p : Str} ;
@@ -407,4 +409,22 @@ oper
_ => BIND ++ ":" ++ BIND
} ;
-----------------------------------------------------------------------
---- a hack to make VerbFin compile accurately for library (in ../),
---- and in a simplified way for ParseFin (here)
slashV2VNP : (SVerb1 ** {c2 : Compl ; vi : InfForm}) -> (NP ** {isNeg : Bool}) ->
(VP ** {c2 : Compl}) -> (VP ** {c2 : Compl})
= \v, np, vp ->
insertObjPre False ---- ignoring np.isNeg
(\fin,b,a -> np.s ! v.c2.c ++ vp.c2.s ++
---- appCompl fin b v.c2 np ++ -- ignoring Acc variation and pre/postposition
(let verb = vp.s ! VIInf v.vi ! Simul ! Pos ! a
in verb.fin ++ verb.inf ++ vp.s2 ! fin ! b ! a ++ vp.adv ! b ++ vp.ext)
---- infVP v.sc b a vp v.vi -- ignoring neg vp's and possessive suffix of inf
)
(predSV v) ** {c2 = vp.c2} ;
}