little fixes to make lib/src 'make Parse8' work again and produce a better than ever 'open text' translator

This commit is contained in:
aarne
2013-12-08 20:36:14 +00:00
parent a91add2bbb
commit e5caac511f
4 changed files with 30 additions and 18 deletions

View File

@@ -57,7 +57,16 @@ concrete VerbFin of Verb = CatFin ** open Prelude, ResFin, StemFin in {
UseCopula = predV vpVerbOlla ; UseCopula = predV vpVerbOlla ;
SlashVV v vp = SlashVV v vp = {
s = v ;
s2 = \\_,b,a => infVP v.sc b a vp v.vi ;
adv = \\_ => v.p ;
vptyp = vp.vptyp ;
ext = [] ;
c2 = vp.c2
} ;
{-
insertObj insertObj
(\\_,b,a => infVP v.sc b a vp v.vi) (\\_,b,a => infVP v.sc b a vp v.vi)
(predSV {s = v.s ; (predSV {s = v.s ;
@@ -68,6 +77,7 @@ concrete VerbFin of Verb = CatFin ** open Prelude, ResFin, StemFin in {
h = v.h ; p = v.p h = v.h ; p = v.p
} }
) ** {c2 = vp.c2} ; ---- correct ?? ) ** {c2 = vp.c2} ; ---- correct ??
-}
SlashV2VNP = StemFin.slashV2VNP ; ---- compilation to pgf takes too long 6/8/2013 hence a simplified version in stemmed/ SlashV2VNP = StemFin.slashV2VNP ; ---- compilation to pgf takes too long 6/8/2013 hence a simplified version in stemmed/

View File

@@ -507,17 +507,17 @@ oper
---- and in a simplified way for ParseFin (here) ---- and in a simplified way for ParseFin (here)
slashV2VNP : (SVerb1 ** {c2 : Compl ; vi : InfForm}) -> (NP ** {isNeg : Bool}) -> slashV2VNP : (SVerb1 ** {c2 : Compl ; vi : InfForm}) -> (NP ** {isNeg : Bool}) ->
(VP ** {c2 : Compl}) -> (VP ** {c2 : Compl}) (VP ** {c2 : Compl}) -> (VP ** {c2 : Compl}) =
= \v, np, vp0 -> let vp = vp2old_vp vp0 ** {c2 = vp0.c2} in \v, np, vp -> {
insertObjPre False ---- ignoring np.isNeg s = v ;
(\fin,b,a -> np.s ! v.c2.c ++ vp.c2.s ++ s2 = \\fin,b,a => np.s ! v.c2.c ++ vp.c2.s ++ v.s ! SVInf ;
---- appCompl fin b v.c2 np ++ -- ignoring Acc variation and pre/postposition ---- infVP v.sc b a vp v.vi ;
(let verb = vp.s ! VIInf v.vi ! Simul ! Pos ! a -- ignoring Acc variation and pre/postposition and proper inf form
in verb.fin ++ verb.inf ++ vp.s2 ! fin ! b ! a ++ vp.adv ! b ++ vp.ext) ext = [] ;
---- infVP v.sc b a vp v.vi -- ignoring neg vp's and possessive suffix of inf adv = \\_ => v.p ;
) vptyp = vp.vptyp ; -- ignoring np.isNeg
(predSV v) ** {c2 = vp.c2} ; c2 = vp.c2
} ;
-------------------------------- --------------------------------

View File

@@ -5,8 +5,8 @@ concrete ConstructionFre of Construction = CatFre **
lin lin
hungry_VP = mkVP have_V2 (mkNP (ParadigmsFre.mkN "faim" feminine)) ; hungry_VP = E.ComplCN have_V2 (mkCN (mkN "faim")) ;
thirsty_VP = mkVP have_V2 (mkNP (ParadigmsFre.mkN "soif" feminine)) ; thirsty_VP = E.ComplCN have_V2 (mkCN (mkN "soif")) ;
has_age_VP card = mkVP have_V2 (mkNP <lin Card card : Card> L.year_N) ; has_age_VP card = mkVP have_V2 (mkNP <lin Card card : Card> L.year_N) ;
have_name_Cl x y = mkCl x (mkV2 (reflV (mkV "appeler"))) y ; have_name_Cl x y = mkCl x (mkV2 (reflV (mkV "appeler"))) y ;
@@ -19,8 +19,8 @@ lin
-- some more things -- some more things
weather_adjCl ap = mkCl (mkVP (mkVA (mkV I.faire_V2)) (lin AP ap)) ; weather_adjCl ap = mkCl (mkVP (mkVA (mkV I.faire_V2)) (lin AP ap)) ;
is_right_VP = mkVP have_V2 (mkNP (mkN "raison")) ; is_right_VP = E.ComplCN have_V2 (mkCN (mkN "raison")) ;
is_wrong_VP = mkVP have_V2 (mkNP (mkN "tort")) ; is_wrong_VP = E.ComplCN have_V2 (mkCN (mkN "tort")) ;
n_units_AP card cn a = mkAP (lin AdA (mkUtt (mkNP <lin Card card : Card> (lin CN cn)))) (lin A a) ; n_units_AP card cn a = mkAP (lin AdA (mkUtt (mkNP <lin Card card : Card> (lin CN cn)))) (lin A a) ;

View File

@@ -10,10 +10,12 @@ lin
has_age_VP card = mkVP (lin AP (mkAP (lin AdA (mkUtt (mkNP <lin Card card : Card> L.year_N))) L.old_A)) ; has_age_VP card = mkVP (lin AP (mkAP (lin AdA (mkUtt (mkNP <lin Card card : Card> L.year_N))) L.old_A)) ;
have_name_Cl x y = mkCl (lin NP x) (mkV2 I.heißen_V) (lin NP y) ; have_name_Cl x y = mkCl (lin NP x) (mkV2 I.heißen_V) (lin NP y) ;
married_Cl x y = mkCl (lin NP x) L.married_A2 (lin NP y) | mkCl (mkNP and_Conj (lin NP x) (lin NP y)) (mkA "verheiratet") ; married_Cl x y = ----mkCl (lin NP x) L.married_A2 (lin NP y) |
mkCl (mkNP and_Conj (lin NP x) (lin NP y)) (mkA "verheiratet") ;
what_name_QCl x = mkQCl how_IAdv (mkCl (lin NP x) I.heißen_V) ; what_name_QCl x = mkQCl how_IAdv (mkCl (lin NP x) I.heißen_V) ;
how_old_QCl x = mkQCl (E.ICompAP (mkAP L.old_A)) (lin NP x) ; ---- how_old_QCl x = mkQCl (E.ICompAP (mkAP L.old_A)) (lin NP x) ; ---- compilation slow
how_old_QCl x = mkQCl (E.IAdvAdv (ParadigmsGer.mkAdv "alt")) (mkCl (lin NP x) G.UseCopula) ; ----
how_far_QCl x = mkQCl (E.IAdvAdv L.far_Adv) (mkCl (mkVP (SyntaxGer.mkAdv to_Prep (lin NP x)))) ; how_far_QCl x = mkQCl (E.IAdvAdv L.far_Adv) (mkCl (mkVP (SyntaxGer.mkAdv to_Prep (lin NP x)))) ;
-- some more things -- some more things