the supine forms restored in Ice.VForm (disappeared by mistake in a git reset)

This commit is contained in:
Aarne Ranta
2019-08-06 17:27:09 +02:00
parent 7bdc01f45a
commit 6a7b220c55
4 changed files with 14 additions and 13 deletions

View File

@@ -2,7 +2,7 @@
concrete AllIce of AllIceAbs = concrete AllIce of AllIceAbs =
LangIce, LangIce,
IrregIce WiktIrregIce -- AR 2019-08-06
-- ExtraIce -- ExtraIce
** **
{ {

View File

@@ -193,7 +193,7 @@ oper
tr ( th "2" ++ gforms voice Pl P2) ++ tr ( th "2" ++ gforms voice Pl P2) ++
tr ( th "3" ++ gforms voice Pl P3) ++ tr ( th "3" ++ gforms voice Pl P3) ++
tr (intagAttr "th" "colspan=2" (heading infinitive_Parameter) ++ intagAttr "td" "colspan=4" (vfin (VInf voice))) ++ tr (intagAttr "th" "colspan=2" (heading infinitive_Parameter) ++ intagAttr "td" "colspan=4" (vfin (VInf voice))) ++
tr (intagAttr "th" "colspan=2" (heading supine_Parameter) ++ intagAttr "td" "colspan=4" (verb.sup ! voice)) tr (intagAttr "th" "colspan=2" (heading supine_Parameter) ++ intagAttr "td" "colspan=4" (vfin (VSup voice)))
) ; ) ;
in in
heading2 (heading active_Parameter) ++ voiceTable Active ++ heading2 (heading active_Parameter) ++ voiceTable Active ++

View File

@@ -915,7 +915,9 @@ resource MorphoIce = ResIce ** open Prelude, (Predef=Predef), ResIce in {
VPast v Subjunctive Sg p => persList (mkVoice v (pastSub ! 0)) (mkVoice v (pastSub ! 1)) (mkVoice v (pastSub ! 2)) ! p; VPast v Subjunctive Sg p => persList (mkVoice v (pastSub ! 0)) (mkVoice v (pastSub ! 1)) (mkVoice v (pastSub ! 2)) ! p;
VPast v Subjunctive Pl p => persList (mkVoice v (presSub ! 3)) (mkVoice v (pastSub ! 4)) (mkVoice v (pastSub ! 5)) ! p; VPast v Subjunctive Pl p => persList (mkVoice v (presSub ! 3)) (mkVoice v (pastSub ! 4)) (mkVoice v (pastSub ! 5)) ! p;
VImp v Sg => mkVoice v impSg ; VImp v Sg => mkVoice v impSg ;
VImp v Pl => mkVoice v impPl VImp v Pl => mkVoice v impPl ;
VSup v => mkVoice v sup
} ; } ;
p = table { p = table {
PWeak Sg Masc c => caseList (pastPartW ! Masc ! 0) (pastPartW ! Masc ! 1) (pastPartW ! Masc ! 2) (pastPartW ! Masc ! 3) ! c ; PWeak Sg Masc c => caseList (pastPartW ! Masc ! 0) (pastPartW ! Masc ! 1) (pastPartW ! Masc ! 2) (pastPartW ! Masc ! 3) ! c ;
@@ -930,7 +932,6 @@ resource MorphoIce = ResIce ** open Prelude, (Predef=Predef), ResIce in {
PStrong Pl Neutr c => caseList (pastPartS ! Neutr ! 4) (pastPartS ! Neutr ! 5) (pastPartS ! Neutr ! 6) (pastPartS ! Neutr ! 7) ! c ; PStrong Pl Neutr c => caseList (pastPartS ! Neutr ! 4) (pastPartS ! Neutr ! 5) (pastPartS ! Neutr ! 6) (pastPartS ! Neutr ! 7) ! c ;
PPres => presPart PPres => presPart
} ; } ;
sup =\\v => mkVoice v sup
} ; } ;
-- AR 2019-08-02: deponent verbs use the Middle voice everywhere, instead of Active -- AR 2019-08-02: deponent verbs use the Middle voice everywhere, instead of Active

View File

@@ -45,6 +45,7 @@ resource ResIce = ParamX ** open Prelude in {
| VPres Voice Mood Number Person | VPres Voice Mood Number Person
| VPast Voice Mood Number Person | VPast Voice Mood Number Person
| VImp Voice Number | VImp Voice Number
| VSup Voice
; ;
oper vInf = VInf Active ; -- AR 2019-08-02 oper vInf = VInf Active ; -- AR 2019-08-02
@@ -129,7 +130,6 @@ param
Verb : Type = { Verb : Type = {
s : VForm => Str ; s : VForm => Str ;
p : PForm => Str ; p : PForm => Str ;
sup : Voice => Str
} ; } ;
mkVoice : Voice -> Str -> Str = \v,s -> mkVoice : Voice -> Str -> Str = \v,s ->
@@ -179,7 +179,8 @@ param
VPast v Subjunctive Pl P2 => mkVoice v flygjuð ; VPast v Subjunctive Pl P2 => mkVoice v flygjuð ;
VPast v Subjunctive Pl P3 => mkVoice v flygju ; VPast v Subjunctive Pl P3 => mkVoice v flygju ;
VImp v Sg => mkVoice v fljúgðu ; VImp v Sg => mkVoice v fljúgðu ;
VImp v Pl => mkVoice v fljúgið VImp v Pl => mkVoice v fljúgið ;
VSup v => mkVoice v flogið
} ; } ;
p = table { p = table {
PWeak Sg Masc Nom => weakSgMascNom ; PWeak Sg Masc Nom => weakSgMascNom ;
@@ -196,7 +197,6 @@ param
PStrong Pl Neutr c => caseList plNeutNom plNeutAcc plNeutDat plNeutGen ! c ; PStrong Pl Neutr c => caseList plNeutNom plNeutAcc plNeutDat plNeutGen ! c ;
PPres => fljúgandi PPres => fljúgandi
} ; } ;
sup =\\v => mkVoice v flogið
} ; } ;
VP : Type = { VP : Type = {
@@ -242,7 +242,7 @@ param
} ; } ;
predVV : { s : VForm => Str ; p : PForm => Str ; sup : Voice => Str ; c2 : Preposition } -> VP = \vv -> predVV : { s : VForm => Str ; p : PForm => Str ; sup : Voice => Str ; c2 : Preposition } -> VP = \vv ->
predV {s = vv.s ; p = vv.p ; sup = vv.sup} ; predV {s = vv.s ; p = vv.p} ;
negation : Polarity -> Str = \pol -> case pol of { negation : Polarity -> Str = \pol -> case pol of {
@@ -264,19 +264,19 @@ param
-- hann sefur []/ekki - he []/doesn't sleep -- hann sefur []/ekki - he []/doesn't sleep
<Pres,Simul> => vf (v.s ! VPres Active Indicative agr.n agr.p) [] (negation pol) False; <Pres,Simul> => vf (v.s ! VPres Active Indicative agr.n agr.p) [] (negation pol) False;
-- hann hefur []/ekki sofið - he has/hasn't slept -- hann hefur []/ekki sofið - he has/hasn't slept
<Pres,Anter> => vf (verbHave.s ! VPres Active Indicative agr.n agr.p) (v.sup ! Active) (negation pol) True ; <Pres,Anter> => vf (verbHave.s ! VPres Active Indicative agr.n agr.p) (v.s ! VSup Active) (negation pol) True ;
-- hann svaf []/ekki - he []/didn't sleep -- hann svaf []/ekki - he []/didn't sleep
<Past,Simul> => vf (v.s ! VPast Active Indicative agr.n agr.p) [] (negation pol) False ; <Past,Simul> => vf (v.s ! VPast Active Indicative agr.n agr.p) [] (negation pol) False ;
-- hann hafði []/ekki sofið - he had/hadn't slept -- hann hafði []/ekki sofið - he had/hadn't slept
<Past,Anter> => vf (verbHave.s ! VPast Active Indicative agr.n agr.p) (v.sup ! Active) (negation pol) True ; <Past,Anter> => vf (verbHave.s ! VPast Active Indicative agr.n agr.p) (v.s ! VSup Active) (negation pol) True ;
-- hann mun []/ekki sofa - he will/won't sleep -- hann mun []/ekki sofa - he will/won't sleep
<Fut,Simul> => vf (verbWill.s ! VPres Active Indicative agr.n agr.p) (v.s ! vInf) (negation pol) True ; <Fut,Simul> => vf (verbWill.s ! VPres Active Indicative agr.n agr.p) (v.s ! vInf) (negation pol) True ;
-- hann mun []/ekki hafa sofið - 'he will/won't have slept' -- hann mun []/ekki hafa sofið - 'he will/won't have slept'
<Fut,Anter> => vf (verbWill.s ! VPres Active Indicative agr.n agr.p) (verbHave.s ! vInf ++ v.sup ! Active) (negation pol) True ; <Fut,Anter> => vf (verbWill.s ! VPres Active Indicative agr.n agr.p) (verbHave.s ! vInf ++ v.s ! VSup Active) (negation pol) True ;
-- hann myndi []/ekki sofa 'he would/wouldn't sleep' -- hann myndi []/ekki sofa 'he would/wouldn't sleep'
<Cond,Simul> => vf (verbWill.s ! VPast Active Subjunctive agr.n agr.p) (v.s ! vInf) (negation pol) True ; <Cond,Simul> => vf (verbWill.s ! VPast Active Subjunctive agr.n agr.p) (v.s ! vInf) (negation pol) True ;
-- hann myndi []/ekki hafa sofið 'he would/wouldn't have slept' -- hann myndi []/ekki hafa sofið 'he would/wouldn't have slept'
<Cond,Anter> => vf (verbWill.s ! VPast Active Subjunctive agr.n agr.p) (verbHave.s ! vInf ++ v.sup ! Active) (negation pol) True <Cond,Anter> => vf (verbWill.s ! VPast Active Subjunctive agr.n agr.p) (verbHave.s ! vInf ++ v.s ! VSup Active) (negation pol) True
} ; } ;
-- Auxilary verbs -- -- Auxilary verbs --
@@ -342,7 +342,7 @@ param
in case <order,vp.indShift,vp.dirShift> of { in case <order,vp.indShift,vp.dirShift> of {
<ODir,False,False> => subj ++ finInf ++ verb.a1.p2 ++ ind ++ dir ++ adv ; <ODir,False,False> => subj ++ finInf ++ verb.a1.p2 ++ ind ++ dir ++ adv ;
<ODir,True,False> => subj ++ finInf ++ ind ++ verb.a1.p2 ++ dir ++ adv ; <ODir,True,False> => subj ++ finInf ++ ind ++ verb.a1.p2 ++ dir ++ adv ;
<Odir,_,True> => subj ++ finInf ++ ind ++ dir ++ verb.a1.p2 ++ adv ; <ODir,_,True> => subj ++ finInf ++ ind ++ dir ++ verb.a1.p2 ++ adv ;
<OQuestion,False,False> => finSubjInf ++ verb.a1.p2 ++ ind ++ dir ++ adv ; <OQuestion,False,False> => finSubjInf ++ verb.a1.p2 ++ ind ++ dir ++ adv ;
<OQuestion,True,False> => finSubjInf ++ ind ++ verb.a1.p2 ++ dir ++ adv ; <OQuestion,True,False> => finSubjInf ++ ind ++ verb.a1.p2 ++ dir ++ adv ;
<OQuestion,_,True> => finSubjInf ++ ind ++ dir ++ verb.a1.p2 ++ adv <OQuestion,_,True> => finSubjInf ++ ind ++ dir ++ verb.a1.p2 ++ adv