1
0
forked from GitHub/gf-core

darcs pull

This commit is contained in:
aarne
2008-06-04 13:41:52 +00:00
parent 869e0563d1
commit 742a7feeea
9 changed files with 199 additions and 82 deletions

View File

@@ -6,13 +6,16 @@ concrete VerbFin of Verb = CatFin ** open Prelude, ResFin in {
lin
UseV = predV ;
{-
ComplV2 v np = insertObj (\\fin,b,_ => appCompl fin b v.c2 np) (predV v) ;
ComplV3 v np np2 =
SlashV2a v = predV v ** {c2 = v.c2} ;
Slash2V3 v np =
insertObj
(\\fin,b,_ => appCompl fin b v.c2 np ++ appCompl fin b v.c3 np2) (predV v) ;
-}
(\\fin,b,_ => appCompl fin b v.c2 np) (predV v) ** {c2 = v.c3} ;
Slash3V3 v np =
insertObj
(\\fin,b,_ => appCompl fin b v.c3 np) (predV v) ** {c2 = v.c2} ;
ComplVV v vp =
insertObj
(\\_,b,a => infVP v.sc b a vp)
@@ -24,38 +27,53 @@ concrete VerbFin of Verb = CatFin ** open Prelude, ResFin in {
}
) ;
ComplVS v s = insertExtrapos ("että" ++ s.s) (predV v) ;
ComplVS v s = insertExtrapos (etta_Conj ++ s.s) (predV v) ;
ComplVQ v q = insertExtrapos ( q.s) (predV v) ;
ComplVA v ap =
insertObj
(\\_,b,agr =>
ap.s ! False ! AN (NCase agr.n (npform2case agr.n v.c2.c))) --- v.cs.s ignored
(predV v) ;
{-
ComplV2S v np s =
insertExtrapos ("että" ++ s.s)
(insertObj (\\fin,b,_ => appCompl fin b v.c2 np) (predV v)) ;
ComplV2Q v np q =
insertExtrapos (q.s)
(insertObj (\\fin,b,_ => appCompl fin b v.c2 np) (predV v)) ;
ComplV2V v np vp =
insertObj (\\_,b,a => infVP v.sc b a vp) ---- different infinitives
(insertObj (\\fin,b,_ => appCompl fin b v.c2 np) (predV v)) ;
ComplV2A v np ap =
SlashV2S v s =
insertExtrapos (etta_Conj ++ s.s) (predV v) ** {c2 = v.c2} ;
SlashV2Q v q =
insertExtrapos (q.s) (predV v) ** {c2 = v.c2} ;
SlashV2V v vp =
insertObj (\\_,b,a => infVP v.sc b a vp) (predV v) ** {c2 = v.c2} ;
---- different infinitives
SlashV2A v ap =
insertObj
(\\fin,b,_ => appCompl fin b v.c2 np ++
ap.s ! False ! AN (NCase np.a.n (npform2case np.a.n v.c3.c))) --agr to obj
(predV v) ;
-}
(\\fin,b,_ =>
ap.s ! False ! AN (NCase Sg (npform2case Sg v.c3.c))) ----agr to obj
(predV v) ** {c2 = v.c2} ;
ComplSlash vp np = insertObj (\\fin,b,_ => appCompl fin b vp.c2 np) vp ;
UseComp comp =
insertObj (\\_,_ => comp.s) (predV (verbOlla ** {sc = NPCase Nom})) ;
SlashVV v vp =
insertObj
(\\_,b,a => infVP v.sc b a vp)
(predV {s = v.s ;
sc = case vp.sc of {
NPCase Nom => v.sc ; -- minun täytyy pestä auto
c => c -- minulla täytyy olla auto
}
}
) ** {c2 = vp.c2} ; ---- correct ??
SlashV2VNP v np vp =
insertObj
(\\fin,b,a => appCompl fin b v.c2 np ++ infVP v.sc b a vp)
(predV v) ** {c2 = vp.c2} ;
AdvVP vp adv = insertObj (\\_,_,_ => adv.s) vp ;
AdVVP adv vp = insertObj (\\_,_,_ => adv.s) vp ;
---- ReflV2 v = insertObj (\\fin,b,agr => appCompl fin b v.c2 (reflPron agr)) (predV v) ;
ReflVP v = insertObj (\\fin,b,agr => appCompl fin b v.c2 (reflPron agr)) v ;
PassV2 v = let vp = predV v in {
s = \\_ => vp.s ! VIPass ;