diff --git a/lib/src/experimental/App.gf b/lib/src/experimental/App.gf deleted file mode 100644 index e53f335c9..000000000 --- a/lib/src/experimental/App.gf +++ /dev/null @@ -1,17 +0,0 @@ ---# -path=.:../translator:../../../examples/phrasebook - -abstract App = - SmallPred - , Extensions [CN,NP,AdA,AdV,CompoundCN,AdAdV,UttAdV,ApposNP] - , Documentation - [Pol,Tense] - , Dictionary - [Pol,Tense] - - , Phrasebook - ** { -flags - startcat=Phr ; - -fun - PhrasePhr : Phrase -> Phr ; - -} diff --git a/lib/src/experimental/AppChi.gf b/lib/src/experimental/AppChi.gf deleted file mode 100644 index 66c55fce5..000000000 --- a/lib/src/experimental/AppChi.gf +++ /dev/null @@ -1,20 +0,0 @@ ---# -path=.:../translator:../../../examples/phrasebook - -concrete AppChi of App = - SmallPredChi - , ExtensionsChi [CN,NP,AdA,AdV,CompoundCN,AdAdV,UttAdV,ApposNP] - , DocumentationChi - [Pol,Tense,Ant] - , DictionaryChi - [Pol,Tense,Ant] - , PhrasebookChi - [Ant,Pol,Tense,at_Prep] - - ** { - -flags - literal = Symb ; - -lin - PhrasePhr p = {s = "+" ++ p.s} | p ; - -} - - diff --git a/lib/src/experimental/AppEng.gf b/lib/src/experimental/AppEng.gf deleted file mode 100644 index 50f1d83c3..000000000 --- a/lib/src/experimental/AppEng.gf +++ /dev/null @@ -1,19 +0,0 @@ ---# -path=.:../translator:../../../examples/phrasebook - -concrete AppEng of App = - SmallPredEng - , ExtensionsEng [CN,NP,AdA,AdV,CompoundCN,AdAdV,UttAdV,ApposNP] - , DocumentationEng - [Pol,Tense] - , DictionaryEng - [Pol,Tense] - - , PhrasebookEng - - ** { - -flags - literal = Symb ; - -lin - PhrasePhr p = {s = "+" ++ p.s} | p ; - -} \ No newline at end of file diff --git a/lib/src/experimental/AppFin.gf b/lib/src/experimental/AppFin.gf deleted file mode 100644 index 343d0d11d..000000000 --- a/lib/src/experimental/AppFin.gf +++ /dev/null @@ -1,18 +0,0 @@ ---# -path=.:../finnish/stemmed:../finnish:../api:../translator:../../../examples/phrasebook:alltenses - -concrete AppFin of App = - SmallPredFin - , ExtensionsFin [CN,NP,AdA,AdV,CompoundCN,AdAdV,UttAdV,ApposNP] - , DocumentationFin - [Pol,Tense] - , DictionaryFin - [Pol,Tense] - , PhrasebookFin - [open_A] - - ** { - -flags - literal = Symb ; - -lin - PhrasePhr p = {s = "+" ++ p.s} | p ; - -} \ No newline at end of file diff --git a/lib/src/experimental/AppFre.gf b/lib/src/experimental/AppFre.gf deleted file mode 100644 index 1bcb817fa..000000000 --- a/lib/src/experimental/AppFre.gf +++ /dev/null @@ -1,18 +0,0 @@ ---# -path=.:../translator:../../../examples/phrasebook - -concrete AppFre of App = - SmallPredFre - , ExtensionsFre [CN,NP,AdA,AdV,CompoundCN,AdAdV,UttAdV,ApposNP] - , DocumentationFre - , DictionaryFre - , PhrasebookFre - [open_A] - - ** { - -flags - literal = Symb ; - -lin - PhrasePhr p = {s = "+" ++ p.s} | p ; - -} \ No newline at end of file diff --git a/lib/src/experimental/AppIta.gf b/lib/src/experimental/AppIta.gf deleted file mode 100644 index 2a7d3715b..000000000 --- a/lib/src/experimental/AppIta.gf +++ /dev/null @@ -1,18 +0,0 @@ ---# -path=.:../translator:../../../examples/phrasebook - -concrete AppIta of App = - SmallPredIta - , ExtensionsIta [CN,NP,AdA,AdV,CompoundCN,AdAdV,UttAdV,ApposNP] - , DocumentationIta - , DictionaryIta - , PhrasebookIta - [open_A] - - ** { - -flags - literal = Symb ; - -lin - PhrasePhr p = {s = "+" ++ p.s} | p ; - -} \ No newline at end of file diff --git a/lib/src/experimental/AppSwe.gf b/lib/src/experimental/AppSwe.gf deleted file mode 100644 index 7bab66ef9..000000000 --- a/lib/src/experimental/AppSwe.gf +++ /dev/null @@ -1,18 +0,0 @@ ---# -path=.:../translator:../../../examples/phrasebook - -concrete AppSwe of App = - SmallPredSwe - , ExtensionsSwe [CN,NP,AdA,AdV,CompoundCN,AdAdV,UttAdV,ApposNP] - , DocumentationSwe - [Pol,Tense] - , DictionarySwe - [Pol,Tense] - , PhrasebookSwe - [open_A] - - ** { - -flags - literal = Symb ; - -lin - PhrasePhr p = {s = "+" ++ p.s} | p ; - -} \ No newline at end of file diff --git a/lib/src/experimental/SmallPred.gf b/lib/src/experimental/SmallPred.gf deleted file mode 100644 index 1625599f2..000000000 --- a/lib/src/experimental/SmallPred.gf +++ /dev/null @@ -1,206 +0,0 @@ -abstract SmallPred = - RGLBase - [Pol,Tense] -** { - -cat - PrV_none ; PrV_np ; PrV_v ; PrV_s ; PrV_q ; PrV_a ; PrV_n ; - PrV_np_np ; PrV_np_v ; PrV_np_s ; PrV_np_q ; PrV_np_a ; PrV_np_n ; - - PrVP_none ; PrVP_np ; PrVP_v ; PrVP_s ; PrVP_q ; PrVP_a ; PrVP_n ; - PrVP_np_np ; PrVP_np_v ; PrVP_np_s ; PrVP_np_q ; PrVP_np_a ; PrVP_np_n ; - - - Tense ; - Pol ; - - PrCl_none ; - - PrQCl_none ; - - PrAdv_none ; - - PrS ; - - PrAP_none ; - - PrCN_none ; - -fun - TPres, TPast, TFut, TCond : Tense ; - PPos, PNeg : Pol ; - ASimul, AAnter : Ant ; - - UseV_none : Ant -> Tense -> Pol -> PrV_none -> PrVP_none ; - UseV_np : Ant -> Tense -> Pol -> PrV_np -> PrVP_np ; - UseV_v : Ant -> Tense -> Pol -> PrV_v -> PrVP_v ; - UseV_s : Ant -> Tense -> Pol -> PrV_s -> PrVP_s ; - UseV_a : Ant -> Tense -> Pol -> PrV_a -> PrVP_a ; - UseV_q : Ant -> Tense -> Pol -> PrV_q -> PrVP_q ; - UseV_n : Ant -> Tense -> Pol -> PrV_v -> PrVP_n ; - UseV_np_np : Ant -> Tense -> Pol -> PrV_np_np -> PrVP_np_np ; - UseV_np_v : Ant -> Tense -> Pol -> PrV_np_v -> PrVP_np_v ; - UseV_np_s : Ant -> Tense -> Pol -> PrV_np_s -> PrVP_np_s ; - UseV_np_a : Ant -> Tense -> Pol -> PrV_np_a -> PrVP_np_a ; - UseV_np_q : Ant -> Tense -> Pol -> PrV_np_q -> PrVP_np_q ; - UseV_np_n : Ant -> Tense -> Pol -> PrV_np_n -> PrVP_np_n ; - --- ComplV2_none : PrVP_np -> NP -> PrVP_none ; - --- UseAP_none : Ant -> Tense -> Pol -> PrAP_none -> PrVP_none ; - - UseAdv_none : Ant -> Tense -> Pol -> PrAdv_none -> PrVP_none ; - - UseCN_none : Ant -> Tense -> Pol -> PrCN_none -> PrVP_none ; - - UseNP_none : Ant -> Tense -> Pol -> NP -> PrVP_none ; - - PredVP_none : NP -> PrVP_none -> PrCl_none ; - PredVP_np : NP -> PrVP_np -> PrCl_none ; - PredVP_v : NP -> PrVP_v -> PrCl_none ; - PredVP_a : NP -> PrVP_a -> PrCl_none ; - PredVP_s : NP -> PrVP_s -> PrCl_none ; - PredVP_q : NP -> PrVP_q -> PrCl_none ; - PredVP_np_np : NP -> PrVP_np -> PrCl_none ; - PredVP_np_v : NP -> PrVP_v -> PrCl_none ; - PredVP_np_a : NP -> PrVP_a -> PrCl_none ; - PredVP_np_s : NP -> PrVP_s -> PrCl_none ; - PredVP_np_q : NP -> PrVP_q -> PrCl_none ; - - Pred2VP_none : NP -> PrVP_none -> NP -> PrCl_none ; - Pred2VP_np : NP -> PrVP_np -> NP -> PrCl_none ; - Pred2VP_v : NP -> PrVP_v -> NP -> PrCl_none ; - Pred2VP_a : NP -> PrVP_a -> NP -> PrCl_none ; - Pred2VP_s : NP -> PrVP_s -> NP -> PrCl_none ; - Pred2VP_q : NP -> PrVP_q -> NP -> PrCl_none ; - Pred2VP_np_np : NP -> PrVP_np -> NP -> PrCl_none ; - Pred2VP_np_v : NP -> PrVP_v -> NP -> PrCl_none ; - Pred2VP_np_a : NP -> PrVP_a -> NP -> PrCl_none ; - Pred2VP_np_s : NP -> PrVP_s -> NP -> PrCl_none ; - Pred2VP_np_q : NP -> PrVP_q -> NP -> PrCl_none ; - - PredAP_none : Ant -> Tense -> Pol -> NP -> PrAP_none -> PrCl_none ; - - QuestVP_none : IP -> PrVP_none -> PrQCl_none ; - - QuestCl_none : PrCl_none -> PrQCl_none ; - - UseCl_none : PrCl_none -> PrS ; - - UseQCl_none : PrQCl_none -> PrS ; - - UttPrS : PrS -> Utt ; - ----- Lift - -fun - LiftV : V -> PrV_none ; - LiftV2 : V2 -> PrV_np ; - LiftVS : VS -> PrV_s ; - LiftVQ : VQ -> PrV_q ; - LiftVV : VV -> PrV_v ; - LiftVA : VA -> PrV_a ; - LiftVN : VA -> PrV_n ; ---- - - LiftV3 : V3 -> PrV_np_np ; - LiftV2S : V2S -> PrV_np_s ; - LiftV2Q : V2Q -> PrV_np_q ; - LiftV2V : V2V -> PrV_np_v ; - LiftV2A : V2A -> PrV_np_a ; - LiftV2N : V2A -> PrV_np_n ; ---- - - LiftAP : AP -> PrAP_none ; - LiftCN : CN -> PrCN_none ; - - LiftAdv : Adv -> PrAdv_none ; - LiftAdV : AdV -> PrAdv_none ; - - -------- Chunk - -cat - Chunks ; - Chunk ; - -fun - OneChunk : Chunk -> Chunks ; - PlusChunk : Chunk -> Chunks -> Chunks ; - - ChunkPhr : Chunks -> Phr ; - -fun - - AP_Chunk : AP -> Chunk ; - AdA_Chunk : AdA -> Chunk ; - Adv_Chunk : Adv -> Chunk ; - AdV_Chunk : AdV -> Chunk ; - AdN_Chunk : AdN -> Chunk ; - Cl_Chunk : PrCl_none -> Chunk ; - QCl_Chunk : PrQCl_none -> Chunk ; - CN_Pl_Chunk : CN -> Chunk ; - CN_Sg_Chunk : CN -> Chunk ; - CN_Pl_Gen_Chunk : CN -> Chunk ; - CN_Sg_Gen_Chunk : CN -> Chunk ; - Conj_Chunk : Conj -> Chunk ; - IAdv_Chunk : IAdv -> Chunk ; - IP_Chunk : IP -> Chunk ; - NP_Nom_Chunk : NP -> Chunk ; - NP_Acc_Chunk : NP -> Chunk ; - NP_Gen_Chunk : NP -> Chunk ; - Numeral_Nom_Chunk : Numeral -> Chunk ; - Numeral_Gen_Chunk : Numeral -> Chunk ; - Ord_Nom_Chunk : Ord -> Chunk ; - Ord_Gen_Chunk : Ord -> Chunk ; - Predet_Chunk : Predet -> Chunk ; - Prep_Chunk : Prep -> Chunk ; - RP_Nom_Chunk : RP -> Chunk ; - RP_Gen_Chunk : RP -> Chunk ; - RP_Acc_Chunk : RP -> Chunk ; - Subj_Chunk : Subj -> Chunk ; - - VP_none_Chunk, VP_none_inf_Chunk : PrVP_none -> Chunk ; - VP_np_Chunk, VP_np_inf_Chunk : PrVP_np -> Chunk ; - VP_s_Chunk, VP_s_inf_Chunk : PrVP_s -> Chunk ; - VP_v_Chunk, VP_v_inf_Chunk : PrVP_v -> Chunk ; - VP_a_Chunk, VP_a_inf_Chunk : PrVP_a -> Chunk ; - VP_q_Chunk, VP_q_inf_Chunk : PrVP_q -> Chunk ; - VP_np_np_Chunk, VP_np_np_inf_Chunk : PrVP_np_np -> Chunk ; - VP_np_s_Chunk, VP_np_s_inf_Chunk : PrVP_np_s -> Chunk ; - VP_np_v_Chunk, VP_np_v_inf_Chunk : PrVP_np_v -> Chunk ; - VP_np_q_Chunk, VP_np_q_inf_Chunk : PrVP_np_q -> Chunk ; - VP_np_a_Chunk, VP_np_a_inf_Chunk : PrVP_np_a -> Chunk ; - - V_none_prespart_Chunk, V_none_pastpart_Chunk : PrV_none -> Chunk ; - V_np_prespart_Chunk, V_np_pastpart_Chunk : PrV_np -> Chunk ; - V_s_prespart_Chunk, V_s_pastpart_Chunk : PrV_s -> Chunk ; - V_v_prespart_Chunk, V_v_pastpart_Chunk : PrV_v -> Chunk ; - V_q_prespart_Chunk, V_q_pastpart_Chunk : PrV_q -> Chunk ; - V_a_prespart_Chunk, V_a_pastpart_Chunk : PrV_q -> Chunk ; - - V_np_np_prespart_Chunk, V_np_np_pastpart_Chunk : PrV_np_np -> Chunk ; - V_np_s_prespart_Chunk, V_np_s_pastpart_Chunk : PrV_np_s -> Chunk ; - V_np_v_prespart_Chunk, V_np_v_pastpart_Chunk : PrV_np_v -> Chunk ; - V_np_q_prespart_Chunk, V_np_q_pastpart_Chunk : PrV_np_q -> Chunk ; - V_np_a_prespart_Chunk, V_np_a_pastpart_Chunk : PrV_np_q -> Chunk ; - - refl_SgP1_Chunk, - refl_SgP2_Chunk, - refl_SgP3_Chunk, - refl_PlP1_Chunk, - refl_PlP2_Chunk, - refl_PlP3_Chunk : Chunk ; - neg_Chunk : Chunk ; - copula_Chunk : Chunk ; - copula_neg_Chunk : Chunk ; - copula_inf_Chunk : Chunk ; - past_copula_Chunk : Chunk ; - past_copula_neg_Chunk : Chunk ; - future_Chunk : Chunk ; - future_neg_Chunk : Chunk ; - cond_Chunk : Chunk ; - cond_neg_Chunk : Chunk ; - perfect_Chunk : Chunk ; - perfect_neg_Chunk : Chunk ; - past_perfect_Chunk : Chunk ; - past_perfect_neg_Chunk : Chunk ; - -} diff --git a/lib/src/experimental/SmallPredChi.gf b/lib/src/experimental/SmallPredChi.gf deleted file mode 100644 index 11eb79e12..000000000 --- a/lib/src/experimental/SmallPredChi.gf +++ /dev/null @@ -1,222 +0,0 @@ -concrete SmallPredChi of SmallPred = - RGLBaseChi - [Pol,Tense,Ant], - - NDPredChi [ - Ant,NP,Utt,IP,IAdv,IComp,Conj, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - Tense , - Pol , - TPres, TPast, TFut, TCond, - PPos, PNeg, - ASimul, AAnter, - PrAdv_none , - PrS, - PrAP_none , - PrCN_none, - UttPrS - - ], - -NDLiftChi [ - CN,AP,V,V2,VV,VS,VA,VQ,V2V,V2S,V2Q,V2A,V3, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - LiftV, - LiftV2, - LiftVS, - LiftVQ, - LiftVV, - LiftVA, - LiftVN, - - LiftV3, - LiftV2S, - LiftV2Q, - LiftV2V, - LiftV2A, - LiftV2N, - - LiftAP, - LiftCN, - - LiftAdv, - LiftAdV -], - -ChunkChi [ - Chunks, - Chunk, - - OneChunk, - PlusChunk, - - ChunkPhr, - - AP_Chunk, - AdA_Chunk, - Adv_Chunk, - AdV_Chunk, - AdN_Chunk, - CN_Pl_Chunk, - CN_Sg_Chunk, - CN_Pl_Gen_Chunk, - CN_Sg_Gen_Chunk, - Conj_Chunk, - IAdv_Chunk, - IP_Chunk, - NP_Nom_Chunk, - NP_Acc_Chunk, - NP_Gen_Chunk, - Numeral_Nom_Chunk, - Numeral_Gen_Chunk, - Ord_Nom_Chunk, - Ord_Gen_Chunk, - Predet_Chunk, - Prep_Chunk, - RP_Nom_Chunk, - RP_Gen_Chunk, - RP_Acc_Chunk, - Subj_Chunk, - - V_none_prespart_Chunk, V_none_pastpart_Chunk, - V_np_prespart_Chunk, V_np_pastpart_Chunk, - V_s_prespart_Chunk, V_s_pastpart_Chunk, - V_v_prespart_Chunk, V_v_pastpart_Chunk, - V_q_prespart_Chunk, V_q_pastpart_Chunk, - V_a_prespart_Chunk, V_a_pastpart_Chunk, - - V_np_np_prespart_Chunk, V_np_np_pastpart_Chunk, - V_np_s_prespart_Chunk, V_np_s_pastpart_Chunk, - V_np_v_prespart_Chunk, V_np_v_pastpart_Chunk, - V_np_q_prespart_Chunk, V_np_q_pastpart_Chunk, - V_np_a_prespart_Chunk, V_np_a_pastpart_Chunk, - - refl_SgP1_Chunk, - refl_SgP2_Chunk, - refl_SgP3_Chunk, - refl_PlP1_Chunk, - refl_PlP2_Chunk, - refl_PlP3_Chunk, - neg_Chunk, - copula_Chunk, - copula_neg_Chunk, - copula_inf_Chunk, - past_copula_Chunk, - past_copula_neg_Chunk, - future_Chunk, - future_neg_Chunk, - cond_Chunk, - cond_neg_Chunk, - perfect_Chunk, - perfect_neg_Chunk, - past_perfect_Chunk, - past_perfect_neg_Chunk - - -] - - ** open (P=PredChi), PredInstanceChi, ResChi in { - -lincat - PrVP_none , PrVP_np , PrVP_v , PrVP_s , PrVP_q , PrVP_a , PrVP_n , - PrVP_np_np , PrVP_np_v , PrVP_np_s , PrVP_np_q , PrVP_np_a , PrVP_np_n - = { - v : Str - } ; - - PrCl_none - = {s : Str} ; - PrQCl_none - = {s : Str} ; - -lin - UseV_none, - UseV_np, - UseV_v, - UseV_s, - UseV_a, - UseV_q, - UseV_n, - UseV_np_np, - UseV_np_v, - UseV_np_s, - UseV_np_a, - UseV_np_q, - UseV_np_n - = \a,t,p,v -> mkVP (P.UseV P.aNone a t p v) ; - -oper - mkVP : PrVerbPhrase -> SmallPredChi.PrVP_none = \vp -> - lin PrVP_none { - v = - let - vv = vp.v ! UUnit ; - vpa = UUnit ; - in - vv.p1 ++ vp.adV ++ vv.p2 ++ vv.p3 ++ vp.adj ! vpa ++ - appPrep vp.c1 (vp.obj1.p1 ! vpa) ++ appPrep vp.c2 (vp.obj2.p1 ! vpa) ++ vp.adv ++ vp.ext - } ; - -lin - UseAdv_none = \a,t,p,v -> mkVP (P.UseAdv P.aNone a t p v) ; - UseCN_none = \a,t,p,v -> mkVP (P.UseCN P.aNone a t p v) ; - UseNP_none = \a,t,p,v -> mkVP (P.UseNP a t p v) ; - - QuestCl_none cl = {s = cl.s ++ question_s} ; - - UseCl_none cl = lin PrS {s = cl.s} ; - UseQCl_none cl = lin PrS cl ; - - PredVP_none, PredVP_np, PredVP_v, PredVP_a, PredVP_q, PredVP_s, - PredVP_np_np, PredVP_np_v, PredVP_np_a, PredVP_np_q, PredVP_np_s - = \np, vp -> { - s = np.s ++ vp.v - } ; - - Pred2VP_none, Pred2VP_np, Pred2VP_v, Pred2VP_a, Pred2VP_q, Pred2VP_s, - Pred2VP_np_np, Pred2VP_np_v, Pred2VP_np_a, Pred2VP_np_q, Pred2VP_np_s - = \s,v,o -> { - s = s.s ++ v.v ++ o.s ; - } ; - - PredAP_none - = \a, t, p, np, ap -> - let cl = P.PredVP P.aNone np (P.UseAP P.aNone a t p ap) in { - s = declCl cl ; - q = questCl (P.QuestCl P.aNone cl) ; - } ; - - Cl_Chunk cl = cl ; - QCl_Chunk cl = cl ; - - VP_none_Chunk, - VP_np_Chunk, - VP_s_Chunk, - VP_v_Chunk, - VP_a_Chunk, - VP_q_Chunk, - VP_np_np_Chunk, - VP_np_s_Chunk, - VP_np_a_Chunk, - VP_np_q_Chunk, - VP_np_v_Chunk - = \vp -> - {s = vp.v} ; - - VP_none_inf_Chunk, - VP_np_inf_Chunk, - VP_s_inf_Chunk, - VP_a_inf_Chunk, - VP_q_inf_Chunk, - VP_v_inf_Chunk, - VP_np_np_inf_Chunk, - VP_np_s_inf_Chunk, - VP_np_a_inf_Chunk, - VP_np_q_inf_Chunk, - VP_np_v_inf_Chunk - = \vp -> {s = vp.v} ; - - } diff --git a/lib/src/experimental/SmallPredEng.gf b/lib/src/experimental/SmallPredEng.gf deleted file mode 100644 index bce2ee119..000000000 --- a/lib/src/experimental/SmallPredEng.gf +++ /dev/null @@ -1,234 +0,0 @@ -concrete SmallPredEng of SmallPred = - RGLBaseEng - [Pol,Tense], - - NDPredEng [ - Ant,NP,Utt,IP,IAdv,IComp,Conj, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - Tense , - Pol , - TPres, TPast, TFut, TCond, - PPos, PNeg, - ASimul, AAnter, - PrAdv_none , - PrS, - PrAP_none , - PrCN_none, - UttPrS - - ], - -NDLiftEng [ - CN,AP,V,V2,VV,VS,VA,VQ,V2V,V2S,V2Q,V2A,V3, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - LiftV, - LiftV2, - LiftVS, - LiftVQ, - LiftVV, - LiftVA, - LiftVN, - - LiftV3, - LiftV2S, - LiftV2Q, - LiftV2V, - LiftV2A, - LiftV2N, - - LiftAP, - LiftCN, - - LiftAdv, - LiftAdV -], - -ChunkEng [ - Chunks, - Chunk, - - OneChunk, - PlusChunk, - - ChunkPhr, - - AP_Chunk, - AdA_Chunk, - Adv_Chunk, - AdV_Chunk, - AdN_Chunk, - CN_Pl_Chunk, - CN_Sg_Chunk, - CN_Pl_Gen_Chunk, - CN_Sg_Gen_Chunk, - Conj_Chunk, - IAdv_Chunk, - IP_Chunk, - NP_Nom_Chunk, - NP_Acc_Chunk, - NP_Gen_Chunk, - Numeral_Nom_Chunk, - Numeral_Gen_Chunk, - Ord_Nom_Chunk, - Ord_Gen_Chunk, - Predet_Chunk, - Prep_Chunk, - RP_Nom_Chunk, - RP_Gen_Chunk, - RP_Acc_Chunk, - Subj_Chunk, - - V_none_prespart_Chunk, V_none_pastpart_Chunk, - V_np_prespart_Chunk, V_np_pastpart_Chunk, - V_s_prespart_Chunk, V_s_pastpart_Chunk, - V_v_prespart_Chunk, V_v_pastpart_Chunk, - V_q_prespart_Chunk, V_q_pastpart_Chunk, - V_a_prespart_Chunk, V_a_pastpart_Chunk, - - V_np_np_prespart_Chunk, V_np_np_pastpart_Chunk, - V_np_s_prespart_Chunk, V_np_s_pastpart_Chunk, - V_np_v_prespart_Chunk, V_np_v_pastpart_Chunk, - V_np_q_prespart_Chunk, V_np_q_pastpart_Chunk, - V_np_a_prespart_Chunk, V_np_a_pastpart_Chunk, - - refl_SgP1_Chunk, - refl_SgP2_Chunk, - refl_SgP3_Chunk, - refl_PlP1_Chunk, - refl_PlP2_Chunk, - refl_PlP3_Chunk, - neg_Chunk, - copula_Chunk, - copula_neg_Chunk, - copula_inf_Chunk, - past_copula_Chunk, - past_copula_neg_Chunk, - future_Chunk, - future_neg_Chunk, - cond_Chunk, - cond_neg_Chunk, - perfect_Chunk, - perfect_neg_Chunk, - past_perfect_Chunk, - past_perfect_neg_Chunk - - -] - - ** open (P=PredEng), PredInstanceEng in { - -lincat - PrVP_none , PrVP_np , PrVP_v , PrVP_s , PrVP_q , PrVP_a , PrVP_n , - PrVP_np_np , PrVP_np_v , PrVP_np_s , PrVP_np_q , PrVP_np_a , PrVP_np_n - = { - v : VAgr => Str ; - inf : VVType => Str ; - qq : VAgr => Str * Str ; - } ; - - PrCl_none - = {s : Str ; q : Str} ; - PrQCl_none - = {s : Str} ; - -lin - UseV_none, - UseV_np, - UseV_v, - UseV_s, - UseV_a, - UseV_q, - UseV_n, - UseV_np_np, - UseV_np_v, - UseV_np_s, - UseV_np_a, - UseV_np_q, - UseV_np_n - = \a,t,p,v -> mkVP (P.UseV P.aNone a t p v) ; - -oper - mkVP : PrVerbPhrase -> SmallPredEng.PrVP_none = \vp -> - lin PrVP_none { - v = \\a => - let - vv = vp.v ! a ; - vpa = vagr2agr a ; - in - vv.p1 ++ vp.adV ++ vv.p2 ++ vv.p3 ++ vp.adj ! vpa ++ - vp.c1 ++ vp.obj1.p1 ! vpa ++ vp.c2 ++ vp.obj2.p1 ! vpa ++ vp.adv ++ vp.ext ; - inf = \\vt => infVP vt defaultAgr vp ; - qq = \\a => - let - vv = vp.qforms ! a ; - vpa = vagr2agr a ; - in - ; - } ; - -lin - UseAdv_none = \a,t,p,v -> mkVP (P.UseAdv P.aNone a t p v) ; - UseCN_none = \a,t,p,v -> mkVP (P.UseCN P.aNone a t p v) ; - UseNP_none = \a,t,p,v -> mkVP (P.UseNP a t p v) ; - - QuestCl_none cl = {s = cl.q} ; - - UseCl_none cl = lin PrS {s = cl.s} ; - UseQCl_none cl = lin PrS cl ; - - PredVP_none, PredVP_np, PredVP_v, PredVP_a, PredVP_q, PredVP_s, - PredVP_np_np, PredVP_np_v, PredVP_np_a, PredVP_np_q, PredVP_np_s - = \np, vp -> { - s = appSubjCase np ++ vp.v ! (agr2vagr np.a) ; - q = let qq = vp.qq ! (agr2vagr np.a) in qq.p1 ++ appSubjCase np ++ qq.p2 - } ; - - Pred2VP_none, Pred2VP_np, Pred2VP_v, Pred2VP_a, Pred2VP_q, Pred2VP_s, - Pred2VP_np_np, Pred2VP_np_v, Pred2VP_np_a, Pred2VP_np_q, Pred2VP_np_s - = \s,v,o -> { - s = appSubjCase s ++ v.v ! (agr2vagr s.a) ++ appObjCase o ; - q = let qq = v.qq ! (agr2vagr s.a) in qq.p1 ++ appSubjCase s ++ qq.p2 ++ appObjCase o ; - } ; - - PredAP_none - = \a, t, p, np, ap -> - let cl = P.PredVP P.aNone np (P.UseAP P.aNone a t p ap) in { - s = declCl cl ; - q = questCl (P.QuestCl P.aNone cl) - } ; - - Cl_Chunk cl = cl ; - QCl_Chunk cl = cl ; - - VP_none_Chunk, - VP_np_Chunk, - VP_s_Chunk, - VP_v_Chunk, - VP_a_Chunk, - VP_q_Chunk, - VP_np_np_Chunk, - VP_np_s_Chunk, - VP_np_a_Chunk, - VP_np_q_Chunk, - VP_np_v_Chunk - = \vp -> - {s = vp.v ! (VASgP1 | VASgP3 | VAPl)} ; - - VP_none_inf_Chunk, - VP_np_inf_Chunk, - VP_s_inf_Chunk, - VP_a_inf_Chunk, - VP_q_inf_Chunk, - VP_v_inf_Chunk, - VP_np_np_inf_Chunk, - VP_np_s_inf_Chunk, - VP_np_a_inf_Chunk, - VP_np_q_inf_Chunk, - VP_np_v_inf_Chunk - = \vp -> {s = vp.inf ! vvInfinitive} ; - - } diff --git a/lib/src/experimental/SmallPredFin.gf b/lib/src/experimental/SmallPredFin.gf deleted file mode 100644 index 0f550fa57..000000000 --- a/lib/src/experimental/SmallPredFin.gf +++ /dev/null @@ -1,241 +0,0 @@ ---# -path=.:../finnish/stemmed:../finnish:../api:../translator:../../../examples/phrasebook:alltenses - -concrete SmallPredFin of SmallPred = - RGLBaseFin - [Pol,Tense], - - NDPredFin [ - Ant,NP,Utt,IP,IAdv,IComp,Conj, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - Tense , - Pol , - TPres, TPast, TFut, TCond, - PPos, PNeg, - ASimul, AAnter, - PrAdv_none , - PrS, - PrAP_none , - PrCN_none, - UttPrS - - ], - -NDLiftFin [ - CN,AP,V,V2,VV,VS,VA,VQ,V2V,V2S,V2Q,V2A,V3, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - LiftV, - LiftV2, - LiftVS, - LiftVQ, - LiftVV, - LiftVA, - LiftVN, - - LiftV3, - LiftV2S, - LiftV2Q, - LiftV2V, - LiftV2A, - LiftV2N, - - LiftAP, - LiftCN, - - LiftAdv, - LiftAdV -], - -ChunkFin [ - Chunks, - Chunk, - - OneChunk, - PlusChunk, - - ChunkPhr, - - AP_Chunk, - AdA_Chunk, - Adv_Chunk, - AdV_Chunk, - AdN_Chunk, - CN_Pl_Chunk, - CN_Sg_Chunk, - CN_Pl_Gen_Chunk, - CN_Sg_Gen_Chunk, - Conj_Chunk, - IAdv_Chunk, - IP_Chunk, - NP_Nom_Chunk, - NP_Acc_Chunk, - NP_Gen_Chunk, - Numeral_Nom_Chunk, - Numeral_Gen_Chunk, - Ord_Nom_Chunk, - Ord_Gen_Chunk, - Predet_Chunk, - Prep_Chunk, - RP_Nom_Chunk, - RP_Gen_Chunk, - RP_Acc_Chunk, - Subj_Chunk, - - V_none_prespart_Chunk, V_none_pastpart_Chunk, - V_np_prespart_Chunk, V_np_pastpart_Chunk, - V_s_prespart_Chunk, V_s_pastpart_Chunk, - V_v_prespart_Chunk, V_v_pastpart_Chunk, - V_q_prespart_Chunk, V_q_pastpart_Chunk, - V_a_prespart_Chunk, V_a_pastpart_Chunk, - - V_np_np_prespart_Chunk, V_np_np_pastpart_Chunk, - V_np_s_prespart_Chunk, V_np_s_pastpart_Chunk, - V_np_v_prespart_Chunk, V_np_v_pastpart_Chunk, - V_np_q_prespart_Chunk, V_np_q_pastpart_Chunk, - V_np_a_prespart_Chunk, V_np_a_pastpart_Chunk, - - refl_SgP1_Chunk, - refl_SgP2_Chunk, - refl_SgP3_Chunk, - refl_PlP1_Chunk, - refl_PlP2_Chunk, - refl_PlP3_Chunk, - neg_Chunk, - copula_Chunk, - copula_neg_Chunk, - copula_inf_Chunk, - past_copula_Chunk, - past_copula_neg_Chunk, - future_Chunk, - future_neg_Chunk, - cond_Chunk, - cond_neg_Chunk, - perfect_Chunk, - perfect_neg_Chunk, - past_perfect_Chunk, - past_perfect_neg_Chunk - - -] - - ** open (P=PredFin), PredInstanceFin in { - -lincat - PrVP_none , PrVP_np , PrVP_v , PrVP_s , PrVP_q , PrVP_a , PrVP_n , - PrVP_np_np , PrVP_np_v , PrVP_np_s , PrVP_np_q , PrVP_np_a , PrVP_np_n - = { - v : VAgr => Str ; - inf : VVType => Str ; - qq : VAgr => Str * Str ; - ko : Str ; - } ; - - PrCl_none - = {s : Str ; q : Str} ; - PrQCl_none - = {s : Str} ; - -lin - UseV_none, - UseV_np, - UseV_v, - UseV_s, - UseV_a, - UseV_q, - UseV_n, - UseV_np_np, - UseV_np_v, - UseV_np_s, - UseV_np_a, - UseV_np_q, - UseV_np_n - = \a,t,p,v -> mkVP (P.UseV P.aNone a t p v) ; - -oper - mkVP : PrVerbPhrase -> SmallPredFin.PrVP_none = \vp -> - lin PrVP_none { - v = \\a => - let - vv = vp.v ! a ; - vpa = vagr2agr a ; - in - vv.fin ++ vp.adV ++ vv.inf ++ vp.adj ! vpa ++ - vp.obj1 ! vpa ++ vp.obj2 ! vpa ++ vp.adv ++ vp.ext ; - inf = \\vt => infVP vt defaultAgr vp ; - qq = \\a => - let - vv = vp.v ! a ; - vpa = vagr2agr a ; - in - ; - ko = Predef.BIND ++ case vp.h of {Back => "ko" ; Front => "kö"} - - } ; - -lin - UseAdv_none = \a,t,p,v -> mkVP (P.UseAdv P.aNone a t p v) ; - UseCN_none = \a,t,p,v -> mkVP (P.UseCN P.aNone a t p v) ; - UseNP_none = \a,t,p,v -> mkVP (P.UseNP a t p v) ; - - QuestCl_none cl = {s = cl.q} ; - - UseCl_none cl = lin PrS {s = cl.s} ; - UseQCl_none cl = lin PrS cl ; - - PredVP_none, PredVP_np, PredVP_v, PredVP_a, PredVP_q, PredVP_s, - PredVP_np_np, PredVP_np_v, PredVP_np_a, PredVP_np_q, PredVP_np_s - = \np, vp -> - { - s = appSubjCase np ++ vp.v ! (agr2vagr np.a) ; - q = let qq = vp.qq ! (agr2vagr np.a) in qq.p1 ++ vp.ko ++ appSubjCase np ++ qq.p2 - } ; - - Pred2VP_none, Pred2VP_np, Pred2VP_v, Pred2VP_a, Pred2VP_q, Pred2VP_s, - Pred2VP_np_np, Pred2VP_np_v, Pred2VP_np_a, Pred2VP_np_q, Pred2VP_np_s - = \s,v,o -> - { - s = appSubjCase s ++ v.v ! (agr2vagr s.a) ++ appObjCase o ; - q = let qq = v.qq ! (agr2vagr s.a) in qq.p1 ++ v.ko ++ appSubjCase s ++ qq.p2 ++ appObjCase o ; - } ; - - PredAP_none - = \a, t, p, np, ap -> - let cl = P.PredVP P.aNone np (P.UseAP P.aNone a t p ap) in { - s = declCl cl ; - q = questCl (P.QuestCl P.aNone cl) ; - } ; - - Cl_Chunk cl = cl ; - QCl_Chunk cl = cl ; - - VP_none_Chunk, - VP_np_Chunk, - VP_s_Chunk, - VP_v_Chunk, - VP_a_Chunk, - VP_q_Chunk, - VP_np_np_Chunk, - VP_np_s_Chunk, - VP_np_a_Chunk, - VP_np_q_Chunk, - VP_np_v_Chunk - = \vp -> - {s = vp.v ! defaultAgr} ; - - VP_none_inf_Chunk, - VP_np_inf_Chunk, - VP_s_inf_Chunk, - VP_a_inf_Chunk, - VP_q_inf_Chunk, - VP_v_inf_Chunk, - VP_np_np_inf_Chunk, - VP_np_s_inf_Chunk, - VP_np_a_inf_Chunk, - VP_np_q_inf_Chunk, - VP_np_v_inf_Chunk - = \vp -> {s = vp.inf ! vvInfinitive} ; - - } diff --git a/lib/src/experimental/SmallPredFre.gf b/lib/src/experimental/SmallPredFre.gf deleted file mode 100644 index c0a9abab6..000000000 --- a/lib/src/experimental/SmallPredFre.gf +++ /dev/null @@ -1,249 +0,0 @@ -concrete SmallPredFre of SmallPred = - RGLBaseFre ** - - open ResFre, CommonRomance, (S = SyntaxFre), (P = ParadigmsFre), PhonoFre, Prelude in { - --- NDPredFre [ -lincat - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n - = {s : VF => Str ; c2 : Compl ; vtyp : VType} ; - PrAdv_none = S.Adv ; - PrS = {s : Str} ; - PrAP_none = S.AP ; - PrCN_none = S.CN ; - - -lincat - PrVP_none , PrVP_np , PrVP_v , PrVP_s , PrVP_q , PrVP_a , PrVP_n , - PrVP_np_np , PrVP_np_v , PrVP_np_s , PrVP_np_q , PrVP_np_a , PrVP_np_n - = { - v : Agr => Str ; - inf : Str ; - c2 : Compl ; - ne : Str ; -- empty in Pos, "ne" in Neg - } ; - - PrCl_none - = {s : Str} ; - PrQCl_none - = {s : Str} ; - -lin - UttPrS s = s ; - - UseV_none, - UseV_np, - UseV_v, - UseV_s, - UseV_a, - UseV_q, - UseV_n, - UseV_np_np, - UseV_np_v, - UseV_np_s, - UseV_np_a, - UseV_np_q, - UseV_np_n - = \a,t,p,v -> mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p v [] ; - -oper - mkVP : Str -> RTense -> Anteriority -> RPolarity -> PrV_none -> Str -> PrVP_none = \atp,tense,ant,pol,verb,obj -> - let - oldvp : ResFre.VP = - predV verb ; - clause : Agr -> {s : Direct => RTense => Anteriority => RPolarity => Mood => Str} = \agr -> - mkClause atp False False agr oldvp ; - nepas : Str * Str = case pol of {RPos => <[],[]> ; _ => } ; - in - lin PrVP_none { - v : Agr => Str = \\agr => (clause agr).s ! DDir ! tense ! ant ! RPos ! Indic ++ nepas.p2 ++ obj ; - inf : Str = verb.s ! VInfin False ++ obj ; ---- ant,pol - c2 : Compl = verb.c2 ; - ne : Str = nepas.p1 ; - } ; - -lin - UseAdv_none a t p adv = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (copula ** {c2 = P.accusative}) adv.s ; - - UseCN_none a t p cn = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (copula ** {c2 = P.accusative}) (cn.s ! Sg) ; - - UseNP_none a t p np = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (copula ** {c2 = P.accusative}) ((np.s ! Nom).comp) ; - - -lin - QuestCl_none cl = {s = "est-ce" ++ elisQue ++ cl.s} ; - - UseCl_none cl = cl ; - UseQCl_none cl = cl ; - - PredVP_none, PredVP_np, PredVP_v, PredVP_a, PredVP_q, PredVP_s, - PredVP_np_np, PredVP_np_v, PredVP_np_a, PredVP_np_q, PredVP_np_s - = \np, vp -> { - s = (np.s ! Nom).comp ++ vp.ne ++ vp.v ! np.a ; - } ; - - Pred2VP_none, Pred2VP_np, Pred2VP_v, Pred2VP_a, Pred2VP_q, Pred2VP_s, - Pred2VP_np_np, Pred2VP_np_v, Pred2VP_np_a, Pred2VP_np_q, Pred2VP_np_s - = \s,v,o -> - let obj = o.s ! v.c2.c in - { - s = (s.s ! Nom).comp ++ v.ne ++ obj.c1 ++ obj.c2 ++ v.v ! s.a ++ v.c2.s ++ obj.comp ; - } ; - - - PredAP_none - = \a, t, p, np, ap -> - let verb = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (lin PrV_none (copula ** {c2 = P.accusative})) [] in - { - s = (np.s ! Nom).comp ++ verb.ne ++ verb.v ! np.a ++ ap.s ! AF np.a.g np.a.n ; - } ; - - - --- NDLiftFre [ - - LiftV, - LiftVS, - LiftVQ, - LiftVV, - LiftVA, - LiftVN - = \v -> v ** {c2 = P.accusative} ; - - LiftV2, - LiftV3, - LiftV2S, - LiftV2Q, - LiftV2V, - LiftV2A, - LiftV2N - = \v -> v ; - - LiftAP ap = ap ; - LiftCN cn = cn ; - - LiftAdv adv = adv ; - LiftAdV adv = adv ; - --- ChunkFre [ - -lincat - Chunks = {s : Str} ; - Chunk = {s : Str}; - -lin - OneChunk c = c ; - PlusChunk c cs = cc2 c cs ; - - ChunkPhr c = ss ("*" ++ c.s) | c ; - -oper - defaultAAgr = {n = Sg ; g = Masc} ; - -lin - - - AP_Chunk ap = ss (ap.s ! AF Masc Sg) ; - AdA_Chunk ada = ada ; - Adv_Chunk adv = adv ; - AdV_Chunk adv = adv ; - AdN_Chunk adn = adn ; - Cl_Chunk cl = cl ; - QCl_Chunk cl = cl ; - CN_Pl_Chunk cn = ss (cn.s ! Pl) ; - CN_Sg_Chunk cn = ss (cn.s ! Sg) ; - CN_Pl_Gen_Chunk cn = ss (elisDe ++ cn.s ! Pl) ; - CN_Sg_Gen_Chunk cn = ss (elisDe ++ cn.s ! Sg) ; - Conj_Chunk conj = ss conj.s2 ; - IAdv_Chunk iadv = iadv ; - IP_Chunk ip = ss (ip.s ! Nom) ; - NP_Nom_Chunk np = ss ((np.s ! Nom).ton) ; - NP_Acc_Chunk np = ss (np.s ! Acc).ton ; - NP_Gen_Chunk np = ss (np.s ! genitive).ton ; - Numeral_Nom_Chunk num = ss (num.s ! NCard Masc) ; - Numeral_Gen_Chunk num = ss (elisDe ++ num.s ! NCard Masc) ; ----- Ord_Nom_Chunk ord = ss (ord.s ! defaultAAgr) ; ----- Ord_Gen_Chunk ord = ss (elisDe ++ ord.s ! defaultAAgr) ; ----- Predet_Chunk predet = ss (predet.s ! defaultAAgr ! Nom) ; - Prep_Chunk prep = prep ; ---- ----- RP_Nom_Chunk rp = ss (rp.s ! False ! defaultAAgr ! Nom) ; ----- RP_Acc_Chunk rp = ss (rp.s ! False ! defaultAAgr ! Acc) ; ----- RP_Gen_Chunk rp = ss (rp.s ! False ! defaultAAgr ! genitive) ; - Subj_Chunk subj = subj ; - - VP_none_Chunk, - VP_np_Chunk, - VP_s_Chunk, - VP_v_Chunk, - VP_a_Chunk, - VP_q_Chunk, - VP_np_np_Chunk, - VP_np_s_Chunk, - VP_np_a_Chunk, - VP_np_q_Chunk, - VP_np_v_Chunk - = \vp -> ss (vp.ne ++ vp.v ! {g = Masc ; n = Sg ; p = P3}) ; - - VP_none_inf_Chunk, - VP_np_inf_Chunk, - VP_s_inf_Chunk, - VP_a_inf_Chunk, - VP_q_inf_Chunk, - VP_v_inf_Chunk, - VP_np_np_inf_Chunk, - VP_np_s_inf_Chunk, - VP_np_a_inf_Chunk, - VP_np_q_inf_Chunk, - VP_np_v_inf_Chunk - = \vp -> ss vp.inf ; - - V_none_prespart_Chunk, - V_np_prespart_Chunk, - V_s_prespart_Chunk, - V_a_prespart_Chunk, - V_q_prespart_Chunk, - V_v_prespart_Chunk, - V_np_np_prespart_Chunk, - V_np_s_prespart_Chunk, - V_np_a_prespart_Chunk, - V_np_q_prespart_Chunk, - V_np_v_prespart_Chunk - = \v -> ss (v.s ! VGer) ; - - V_none_pastpart_Chunk, - V_np_pastpart_Chunk, - V_s_pastpart_Chunk, - V_a_pastpart_Chunk, - V_q_pastpart_Chunk, - V_v_pastpart_Chunk, - V_np_np_pastpart_Chunk, - V_np_s_pastpart_Chunk, - V_np_a_pastpart_Chunk, - V_np_q_pastpart_Chunk, - V_np_v_pastpart_Chunk - = \v -> ss (v.s ! VPart Masc Sg) ; - - copula_inf_Chunk = ss "ètre" ; - - refl_SgP1_Chunk = ss "moi-même" ; - refl_SgP2_Chunk = ss "toi-même" ; - refl_SgP3_Chunk = ss "lui-même" ; - refl_PlP1_Chunk = ss "nous-mêmes" ; - refl_PlP2_Chunk = ss "vous-mêmes" ; - refl_PlP3_Chunk = ss "eux-mêmes" ; - neg_Chunk = ss "non" ; - copula_Chunk = ss "est" ; - copula_neg_Chunk = ss "n'est pas" ; - past_copula_Chunk = ss "était" ; - past_copula_neg_Chunk = ss "n'était pas" ; - future_Chunk = ss "va" ; - future_neg_Chunk = ss "ne va pas" ; - cond_Chunk = ss "ferait" ; ---- - cond_neg_Chunk = ss "ne ferait pas" ; ---- - perfect_Chunk = ss "a" ; - perfect_neg_Chunk = ss "n'a pas" ; - past_perfect_Chunk = ss "avait" ; - past_perfect_neg_Chunk = ss "n'avait pas" ; - -} \ No newline at end of file diff --git a/lib/src/experimental/SmallPredIta.gf b/lib/src/experimental/SmallPredIta.gf deleted file mode 100644 index 664525c3b..000000000 --- a/lib/src/experimental/SmallPredIta.gf +++ /dev/null @@ -1,249 +0,0 @@ -concrete SmallPredIta of SmallPred = - RGLBaseIta ** - - open ResIta, CommonRomance, (S = SyntaxIta), (P = ParadigmsIta), PhonoIta, Prelude in { - --- NDPredIta [ -lincat - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n - = {s : VF => Str ; c2 : Compl ; vtyp : VType} ; - PrAdv_none = S.Adv ; - PrS = {s : Str} ; - PrAP_none = S.AP ; - PrCN_none = S.CN ; - - -lincat - PrVP_none , PrVP_np , PrVP_v , PrVP_s , PrVP_q , PrVP_a , PrVP_n , - PrVP_np_np , PrVP_np_v , PrVP_np_s , PrVP_np_q , PrVP_np_a , PrVP_np_n - = { - v : Agr => Str ; - inf : Str ; - c2 : Compl ; - ne : Str ; -- empty in Pos, "ne" in Neg - } ; - - PrCl_none - = {s : Str} ; - PrQCl_none - = {s : Str} ; - -lin - UttPrS s = s ; - - UseV_none, - UseV_np, - UseV_v, - UseV_s, - UseV_a, - UseV_q, - UseV_n, - UseV_np_np, - UseV_np_v, - UseV_np_s, - UseV_np_a, - UseV_np_q, - UseV_np_n - = \a,t,p,v -> mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p v [] ; - -oper - mkVP : Str -> RTense -> Anteriority -> RPolarity -> PrV_none -> Str -> PrVP_none = \atp,tense,ant,pol,verb,obj -> - let - oldvp : ResIta.VP = - predV verb ; - clause : Agr -> {s : Direct => RTense => Anteriority => RPolarity => Mood => Str} = \agr -> - mkClause atp False False agr oldvp ; - nepas : Str * Str = case pol of {RPos => <[],[]> ; _ => <"non", []>} ; - in - lin PrVP_none { - v : Agr => Str = \\agr => (clause agr).s ! DDir ! tense ! ant ! RPos ! Indic ++ nepas.p2 ++ obj ; - inf : Str = verb.s ! VInfin False ++ obj ; ---- ant,pol - c2 : Compl = verb.c2 ; - ne : Str = nepas.p1 ; - } ; - -lin - UseAdv_none a t p adv = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (copula ** {c2 = P.accusative}) adv.s ; - - UseCN_none a t p cn = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (copula ** {c2 = P.accusative}) (cn.s ! Sg) ; - - UseNP_none a t p np = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (copula ** {c2 = P.accusative}) ((np.s ! Nom).comp) ; - - -lin - QuestCl_none cl = {s = cl.s} ; - - UseCl_none cl = cl ; - UseQCl_none cl = cl ; - - PredVP_none, PredVP_np, PredVP_v, PredVP_a, PredVP_q, PredVP_s, - PredVP_np_np, PredVP_np_v, PredVP_np_a, PredVP_np_q, PredVP_np_s - = \np, vp -> { - s = (np.s ! Nom).comp ++ vp.ne ++ vp.v ! np.a ; - } ; - - Pred2VP_none, Pred2VP_np, Pred2VP_v, Pred2VP_a, Pred2VP_q, Pred2VP_s, - Pred2VP_np_np, Pred2VP_np_v, Pred2VP_np_a, Pred2VP_np_q, Pred2VP_np_s - = \s,v,o -> - let obj = o.s ! v.c2.c in - { - s = (s.s ! Nom).comp ++ v.ne ++ obj.c1 ++ obj.c2 ++ v.v ! s.a ++ v.c2.s ++ obj.comp ; - } ; - - - PredAP_none - = \a, t, p, np, ap -> - let verb = mkVP (t.s ++ a.s ++ p.s) t.t a.a p.p (lin PrV_none (copula ** {c2 = P.accusative})) [] in - { - s = (np.s ! Nom).comp ++ verb.ne ++ verb.v ! np.a ++ ap.s ! AF np.a.g np.a.n ; - } ; - - - --- NDLiftIta [ - - LiftV, - LiftVS, - LiftVQ, - LiftVV, - LiftVA, - LiftVN - = \v -> v ** {c2 = P.accusative} ; - - LiftV2, - LiftV3, - LiftV2S, - LiftV2Q, - LiftV2V, - LiftV2A, - LiftV2N - = \v -> v ; - - LiftAP ap = ap ; - LiftCN cn = cn ; - - LiftAdv adv = adv ; - LiftAdV adv = adv ; - --- ChunkIta [ - -lincat - Chunks = {s : Str} ; - Chunk = {s : Str}; - -lin - OneChunk c = c ; - PlusChunk c cs = cc2 c cs ; - - ChunkPhr c = ss ("*" ++ c.s) | c ; - -oper - defaultAAgr = {n = Sg ; g = Masc} ; - -lin - - - AP_Chunk ap = ss (ap.s ! AF Masc Sg) ; - AdA_Chunk ada = ada ; - Adv_Chunk adv = adv ; - AdV_Chunk adv = adv ; - AdN_Chunk adn = adn ; - Cl_Chunk cl = cl ; - QCl_Chunk cl = cl ; - CN_Pl_Chunk cn = ss (cn.s ! Pl) ; - CN_Sg_Chunk cn = ss (cn.s ! Sg) ; - CN_Pl_Gen_Chunk cn = ss ("di" ++ cn.s ! Pl) ; - CN_Sg_Gen_Chunk cn = ss ("di" ++ cn.s ! Sg) ; - Conj_Chunk conj = ss conj.s2 ; - IAdv_Chunk iadv = iadv ; - IP_Chunk ip = ss (ip.s ! Nom) ; - NP_Nom_Chunk np = ss ((np.s ! Nom).ton) ; - NP_Acc_Chunk np = ss (np.s ! Acc).ton ; - NP_Gen_Chunk np = ss (np.s ! genitive).ton ; - Numeral_Nom_Chunk num = ss (num.s ! NCard Masc) ; - Numeral_Gen_Chunk num = ss ("di" ++ num.s ! NCard Masc) ; ----- Ord_Nom_Chunk ord = ss (ord.s ! defaultAAgr) ; ----- Ord_Gen_Chunk ord = ss ("di" ++ ord.s ! defaultAAgr) ; ----- Predet_Chunk predet = ss (predet.s ! defaultAAgr ! Nom) ; - Prep_Chunk prep = prep ; ---- ----- RP_Nom_Chunk rp = ss (rp.s ! False ! defaultAAgr ! Nom) ; ----- RP_Acc_Chunk rp = ss (rp.s ! False ! defaultAAgr ! Acc) ; ----- RP_Gen_Chunk rp = ss (rp.s ! False ! defaultAAgr ! genitive) ; - Subj_Chunk subj = subj ; - - VP_none_Chunk, - VP_np_Chunk, - VP_s_Chunk, - VP_v_Chunk, - VP_a_Chunk, - VP_q_Chunk, - VP_np_np_Chunk, - VP_np_s_Chunk, - VP_np_a_Chunk, - VP_np_q_Chunk, - VP_np_v_Chunk - = \vp -> ss (vp.ne ++ vp.v ! {g = Masc ; n = Sg ; p = P3}) ; - - VP_none_inf_Chunk, - VP_np_inf_Chunk, - VP_s_inf_Chunk, - VP_a_inf_Chunk, - VP_q_inf_Chunk, - VP_v_inf_Chunk, - VP_np_np_inf_Chunk, - VP_np_s_inf_Chunk, - VP_np_a_inf_Chunk, - VP_np_q_inf_Chunk, - VP_np_v_inf_Chunk - = \vp -> ss vp.inf ; - - V_none_prespart_Chunk, - V_np_prespart_Chunk, - V_s_prespart_Chunk, - V_a_prespart_Chunk, - V_q_prespart_Chunk, - V_v_prespart_Chunk, - V_np_np_prespart_Chunk, - V_np_s_prespart_Chunk, - V_np_a_prespart_Chunk, - V_np_q_prespart_Chunk, - V_np_v_prespart_Chunk - = \v -> ss (v.s ! VGer) ; - - V_none_pastpart_Chunk, - V_np_pastpart_Chunk, - V_s_pastpart_Chunk, - V_a_pastpart_Chunk, - V_q_pastpart_Chunk, - V_v_pastpart_Chunk, - V_np_np_pastpart_Chunk, - V_np_s_pastpart_Chunk, - V_np_a_pastpart_Chunk, - V_np_q_pastpart_Chunk, - V_np_v_pastpart_Chunk - = \v -> ss (v.s ! VPart Masc Sg) ; - - copula_inf_Chunk = ss "ètre" ; - - refl_SgP1_Chunk = ss "me stesso" ; - refl_SgP2_Chunk = ss "te stesso" ; - refl_SgP3_Chunk = ss "lui stesso" ; - refl_PlP1_Chunk = ss "noi stessi" ; - refl_PlP2_Chunk = ss "voi stessi" ; - refl_PlP3_Chunk = ss "loro stessi" ; - neg_Chunk = ss "non" ; - copula_Chunk = ss "è" ; - copula_neg_Chunk = ss "non è" ; - past_copula_Chunk = ss "era" ; - past_copula_neg_Chunk = ss "non era" ; - future_Chunk = ss "vuole" ; ---- - future_neg_Chunk = ss "non vuole" ; ---- - cond_Chunk = ss "vorrebbe" ; ---- - cond_neg_Chunk = ss "non vorrebbe" ; ---- - perfect_Chunk = ss "ha" ; - perfect_neg_Chunk = ss "non ha" ; - past_perfect_Chunk = ss "aveva" ; - past_perfect_neg_Chunk = ss "non aveva" ; - -} \ No newline at end of file diff --git a/lib/src/experimental/SmallPredSwe.gf b/lib/src/experimental/SmallPredSwe.gf deleted file mode 100644 index c97e8b267..000000000 --- a/lib/src/experimental/SmallPredSwe.gf +++ /dev/null @@ -1,234 +0,0 @@ -concrete SmallPredSwe of SmallPred = - RGLBaseSwe - [Pol,Tense], - - NDPredSwe [ - Ant,NP,Utt,IP,IAdv,IComp,Conj, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - Tense , - Pol , - TPres, TPast, TFut, TCond, - PPos, PNeg, - ASimul, AAnter, - PrAdv_none , - PrS, - PrAP_none , - PrCN_none, - UttPrS - - ], - -NDLiftSwe [ - CN,AP,V,V2,VV,VS,VA,VQ,V2V,V2S,V2Q,V2A,V3, - PrV_none, PrV_np , PrV_v , PrV_s , PrV_q , PrV_a , PrV_n , - PrV_np_np , PrV_np_v , PrV_np_s , PrV_np_q , PrV_np_a , PrV_np_n , - - LiftV, - LiftV2, - LiftVS, - LiftVQ, - LiftVV, - LiftVA, - LiftVN, - - LiftV3, - LiftV2S, - LiftV2Q, - LiftV2V, - LiftV2A, - LiftV2N, - - LiftAP, - LiftCN, - - LiftAdv, - LiftAdV -], - -ChunkSwe [ - Chunks, - Chunk, - - OneChunk, - PlusChunk, - - ChunkPhr, - - AP_Chunk, - AdA_Chunk, - Adv_Chunk, - AdV_Chunk, - AdN_Chunk, - CN_Pl_Chunk, - CN_Sg_Chunk, - CN_Pl_Gen_Chunk, - CN_Sg_Gen_Chunk, - Conj_Chunk, - IAdv_Chunk, - IP_Chunk, - NP_Nom_Chunk, - NP_Acc_Chunk, - NP_Gen_Chunk, - Numeral_Nom_Chunk, - Numeral_Gen_Chunk, - Ord_Nom_Chunk, - Ord_Gen_Chunk, - Predet_Chunk, - Prep_Chunk, - RP_Nom_Chunk, - RP_Gen_Chunk, - RP_Acc_Chunk, - Subj_Chunk, - - V_none_prespart_Chunk, V_none_pastpart_Chunk, - V_np_prespart_Chunk, V_np_pastpart_Chunk, - V_s_prespart_Chunk, V_s_pastpart_Chunk, - V_v_prespart_Chunk, V_v_pastpart_Chunk, - V_q_prespart_Chunk, V_q_pastpart_Chunk, - V_a_prespart_Chunk, V_a_pastpart_Chunk, - - V_np_np_prespart_Chunk, V_np_np_pastpart_Chunk, - V_np_s_prespart_Chunk, V_np_s_pastpart_Chunk, - V_np_v_prespart_Chunk, V_np_v_pastpart_Chunk, - V_np_q_prespart_Chunk, V_np_q_pastpart_Chunk, - V_np_a_prespart_Chunk, V_np_a_pastpart_Chunk, - - refl_SgP1_Chunk, - refl_SgP2_Chunk, - refl_SgP3_Chunk, - refl_PlP1_Chunk, - refl_PlP2_Chunk, - refl_PlP3_Chunk, - neg_Chunk, - copula_Chunk, - copula_neg_Chunk, - copula_inf_Chunk, - past_copula_Chunk, - past_copula_neg_Chunk, - future_Chunk, - future_neg_Chunk, - cond_Chunk, - cond_neg_Chunk, - perfect_Chunk, - perfect_neg_Chunk, - past_perfect_Chunk, - past_perfect_neg_Chunk - - -] - - ** open (P=PredSwe), PredInstanceSwe in { - -lincat - PrVP_none , PrVP_np , PrVP_v , PrVP_s , PrVP_q , PrVP_a , PrVP_n , - PrVP_np_np , PrVP_np_v , PrVP_np_s , PrVP_np_q , PrVP_np_a , PrVP_np_n - = { - v : VAgr => Str ; - inf : VVType => Str ; - qq : VAgr => Str * Str ; - } ; - - PrCl_none - = {s : Str ; q : Str} ; - PrQCl_none - = {s : Str} ; - -lin - UseV_none, - UseV_np, - UseV_v, - UseV_s, - UseV_a, - UseV_q, - UseV_n, - UseV_np_np, - UseV_np_v, - UseV_np_s, - UseV_np_a, - UseV_np_q, - UseV_np_n - = \a,t,p,v -> mkVP (P.UseV P.aNone a t p v) ; - -oper - mkVP : PrVerbPhrase -> SmallPredSwe.PrVP_none = \vp -> - lin PrVP_none { - v = \\a => - let - vv = vp.v ! a ; - vpa = vagr2agr a ; - in - vv.p1 ++ vp.adV ++ vv.p2 ++ vv.p3 ++ vp.adj ! vpa ++ - vp.c1 ++ vp.obj1.p1 ! vpa ++ vp.c2 ++ vp.obj2.p1 ! vpa ++ vp.adv ++ vp.ext ; - inf = \\vt => infVP vt defaultAgr vp ; - qq = \\a => - let - vv = vp.v ! a ; - vpa = vagr2agr a ; - in - ; - } ; - -lin - UseAdv_none = \a,t,p,v -> mkVP (P.UseAdv P.aNone a t p v) ; - UseCN_none = \a,t,p,v -> mkVP (P.UseCN P.aNone a t p v) ; - UseNP_none = \a,t,p,v -> mkVP (P.UseNP a t p v) ; - - QuestCl_none cl = {s = cl.q} ; - - UseCl_none cl = lin PrS {s = cl.s} ; - UseQCl_none cl = lin PrS cl ; - - PredVP_none, PredVP_np, PredVP_v, PredVP_a, PredVP_q, PredVP_s, - PredVP_np_np, PredVP_np_v, PredVP_np_a, PredVP_np_q, PredVP_np_s - = \np, vp -> { - s = appSubjCase np ++ vp.v ! (agr2vagr np.a) ; - q = let qq = vp.qq ! (agr2vagr np.a) in qq.p1 ++ appSubjCase np ++ qq.p2 - } ; - - Pred2VP_none, Pred2VP_np, Pred2VP_v, Pred2VP_a, Pred2VP_q, Pred2VP_s, - Pred2VP_np_np, Pred2VP_np_v, Pred2VP_np_a, Pred2VP_np_q, Pred2VP_np_s - = \s,v,o -> { - s = appSubjCase s ++ v.v ! (agr2vagr s.a) ++ appObjCase o ; - q = let qq = v.qq ! (agr2vagr s.a) in qq.p1 ++ appSubjCase s ++ qq.p2 ++ appObjCase o ; - } ; - - PredAP_none - = \a, t, p, np, ap -> - let cl = P.PredVP P.aNone np (P.UseAP P.aNone a t p ap) in { - s = declCl cl ; - q = questCl (P.QuestCl P.aNone cl) ; - } ; - - Cl_Chunk cl = cl ; - QCl_Chunk cl = cl ; - - VP_none_Chunk, - VP_np_Chunk, - VP_s_Chunk, - VP_v_Chunk, - VP_a_Chunk, - VP_q_Chunk, - VP_np_np_Chunk, - VP_np_s_Chunk, - VP_np_a_Chunk, - VP_np_q_Chunk, - VP_np_v_Chunk - = \vp -> - {s = vp.v ! UUnit} ; - - VP_none_inf_Chunk, - VP_np_inf_Chunk, - VP_s_inf_Chunk, - VP_a_inf_Chunk, - VP_q_inf_Chunk, - VP_v_inf_Chunk, - VP_np_np_inf_Chunk, - VP_np_s_inf_Chunk, - VP_np_a_inf_Chunk, - VP_np_q_inf_Chunk, - VP_np_v_inf_Chunk - = \vp -> {s = vp.inf ! vvInfinitive} ; - - }