mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-21 00:52:51 -06:00
fixed warnings in present compilation of resource, esp. unreached patterns
This commit is contained in:
@@ -33,13 +33,14 @@ concrete IdiomBul of Idiom = CatBul ** open Prelude, ParadigmsBul, ResBul in {
|
|||||||
|
|
||||||
v : {aux1:Str; aux2:Str; main:Str}
|
v : {aux1:Str; aux2:Str; main:Str}
|
||||||
= case <t,a> of {
|
= case <t,a> of {
|
||||||
<Pres,Simul> => {aux1=[]; aux2=[]; main=present} ;
|
<Pres,Simul> => {aux1=[]; aux2=[]; main=present}
|
||||||
<Pres,Anter> => {aux1=[]; aux2=auxPres; main=perfect} ;
|
; --# notpresent
|
||||||
<Past,Simul> => {aux1=[]; aux2=[]; main=aorist} ;
|
<Pres,Anter> => {aux1=[]; aux2=auxPres; main=perfect} ; --# notpresent
|
||||||
<Past,Anter> => {aux1=[]; aux2=auxAorist; main=perfect} ;
|
<Past,Simul> => {aux1=[]; aux2=[]; main=aorist} ; --# notpresent
|
||||||
<Fut, Simul> => {aux1="ùå"; aux2=[]; main=present} ;
|
<Past,Anter> => {aux1=[]; aux2=auxAorist; main=perfect} ; --# notpresent
|
||||||
<Fut, Anter> => {aux1="ùå"++auxPres; aux2=[]; main=perfect} ;
|
<Fut, Simul> => {aux1="ùå"; aux2=[]; main=present} ; --# notpresent
|
||||||
<Cond,_> => {aux1=auxCondS; aux2=[]; main=perfect}
|
<Fut, Anter> => {aux1="ùå"++auxPres; aux2=[]; main=perfect} ; --# notpresent
|
||||||
|
<Cond,_> => {aux1=auxCondS; aux2=[]; main=perfect} --# notpresent
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
in case o of {
|
in case o of {
|
||||||
|
|||||||
@@ -454,13 +454,14 @@ resource ResBul = ParamX ** open Prelude in {
|
|||||||
|
|
||||||
verbs : {aux:{s1:Str; s2:Str}; main:Str} =
|
verbs : {aux:{s1:Str; s2:Str}; main:Str} =
|
||||||
case <t,a> of {
|
case <t,a> of {
|
||||||
<Pres,Simul> => {aux=vf2 clitic.s; main=presentImperf} ;
|
<Pres,Simul> => {aux=vf2 clitic.s; main=presentImperf}
|
||||||
<Pres,Anter> => {aux=vf1 clitic.s; main=perfect} ;
|
; --# notpresent
|
||||||
<Past,Simul> => {aux=vf2 clitic.s; main=aorist} ;
|
<Pres,Anter> => {aux=vf1 clitic.s; main=perfect} ; --# notpresent
|
||||||
<Past,Anter> => {aux=vf4 auxAorist; main=perfect} ;
|
<Past,Simul> => {aux=vf2 clitic.s; main=aorist} ; --# notpresent
|
||||||
<Fut, Simul> => {aux=vf3 clitic.s; main=present} ;
|
<Past,Anter> => {aux=vf4 auxAorist; main=perfect} ; --# notpresent
|
||||||
<Fut, Anter> => {aux=vf3 (apc []); main=perfect} ;
|
<Fut, Simul> => {aux=vf3 clitic.s; main=present} ; --# notpresent
|
||||||
<Cond,_ > => {aux=vf4 auxCond ; main=perfect}
|
<Fut, Anter> => {aux=vf3 (apc []); main=perfect} ; --# notpresent
|
||||||
|
<Cond,_ > => {aux=vf4 auxCond ; main=perfect} --# notpresent
|
||||||
}
|
}
|
||||||
|
|
||||||
in verb.ad.s ++ li0 ++ verbs.aux.s1 ++ verbs.main ++ verbs.aux.s2 ;
|
in verb.ad.s ++ li0 ++ verbs.aux.s1 ++ verbs.main ++ verbs.aux.s2 ;
|
||||||
|
|||||||
@@ -2026,6 +2026,9 @@ let x_ = Predef.tk 5 deure in
|
|||||||
VP (Pass Sg Fem) => x_ + "guda" ;
|
VP (Pass Sg Fem) => x_ + "guda" ;
|
||||||
VP (Pass Pl Masc) => x_ + "guts" ;
|
VP (Pass Pl Masc) => x_ + "guts" ;
|
||||||
VP (Pass Sg Masc) => x_ + "gut" ;
|
VP (Pass Sg Masc) => x_ + "gut" ;
|
||||||
|
|
||||||
|
|
||||||
|
{- -- AR removed these duplicates
|
||||||
VI Infn => x_ + "ure" ;
|
VI Infn => x_ + "ure" ;
|
||||||
VI Ger => x_ + "vent" ;
|
VI Ger => x_ + "vent" ;
|
||||||
VI Part => x_ + "gut" ;
|
VI Part => x_ + "gut" ;
|
||||||
@@ -2075,6 +2078,7 @@ let x_ = Predef.tk 5 deure in
|
|||||||
VP (Pass Sg Fem) => x_ + "guda" ;
|
VP (Pass Sg Fem) => x_ + "guda" ;
|
||||||
VP (Pass Pl Masc) => x_ + "guts" ;
|
VP (Pass Pl Masc) => x_ + "guts" ;
|
||||||
VP (Pass Sg Masc) => x_ + "gut" ;
|
VP (Pass Sg Masc) => x_ + "gut" ;
|
||||||
|
-}
|
||||||
VP (Imp Sg P1) => variants {}
|
VP (Imp Sg P1) => variants {}
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
@@ -4912,14 +4916,14 @@ let s_ = Predef.tk 4 seure in
|
|||||||
VP (Pres Ind Sg P3) => s_ + "eu" ;
|
VP (Pres Ind Sg P3) => s_ + "eu" ;
|
||||||
VP (Pres Sub Pl P1) => s_ + "eguem" ;
|
VP (Pres Sub Pl P1) => s_ + "eguem" ;
|
||||||
VP (Pres Sub Sg P1) => s_ + "ega" ;
|
VP (Pres Sub Sg P1) => s_ + "ega" ;
|
||||||
VP (Pres Sub Sg P1) => s_ + "egui" ;
|
-- VP (Pres Sub Sg P1) => s_ + "egui" ;
|
||||||
VP (Pres Sub Pl P2) => s_ + "egueu" ;
|
VP (Pres Sub Pl P2) => s_ + "egueu" ;
|
||||||
VP (Pres Sub Sg P2) => s_ + "egues" ;
|
VP (Pres Sub Sg P2) => s_ + "egues" ;
|
||||||
VP (Pres Sub Sg P2) => s_ + "eguis" ;
|
-- VP (Pres Sub Sg P2) => s_ + "eguis" ;
|
||||||
VP (Pres Sub Pl P3) => s_ + "eguen" ;
|
VP (Pres Sub Pl P3) => s_ + "eguen" ;
|
||||||
VP (Pres Sub Pl P3) => s_ + "eguin" ;
|
-- VP (Pres Sub Pl P3) => s_ + "eguin" ;
|
||||||
VP (Pres Sub Sg P3) => s_ + "ega" ;
|
VP (Pres Sub Sg P3) => s_ + "ega" ;
|
||||||
VP (Pres Sub Sg P3) => s_ + "egui" ;
|
-- VP (Pres Sub Sg P3) => s_ + "egui" ; -- AR: why duplicated forms?
|
||||||
VP (Impf Ind Sg P1) => s_ + "eia" ;--# notpresent
|
VP (Impf Ind Sg P1) => s_ + "eia" ;--# notpresent
|
||||||
VP (Impf Ind Sg P2) => s_ + "eies" ;--# notpresent
|
VP (Impf Ind Sg P2) => s_ + "eies" ;--# notpresent
|
||||||
VP (Impf Ind Pl P3) => s_ + "eien" ;--# notpresent
|
VP (Impf Ind Pl P3) => s_ + "eien" ;--# notpresent
|
||||||
@@ -4958,9 +4962,9 @@ let s_ = Predef.tk 4 seure in
|
|||||||
VP (Imp Pl P2) => s_ + "eieu" ;
|
VP (Imp Pl P2) => s_ + "eieu" ;
|
||||||
VP (Imp Sg P2) => s_ + "eu" ;
|
VP (Imp Sg P2) => s_ + "eu" ;
|
||||||
VP (Imp Pl P3) => s_ + "eguen" ;
|
VP (Imp Pl P3) => s_ + "eguen" ;
|
||||||
VP (Imp Pl P3) => s_ + "eguin" ;
|
-- VP (Imp Pl P3) => s_ + "eguin" ;
|
||||||
VP (Imp Sg P3) => s_ + "ega" ;
|
VP (Imp Sg P3) => s_ + "ega" ;
|
||||||
VP (Imp Sg P3) => s_ + "egui" ;
|
-- VP (Imp Sg P3) => s_ + "egui" ;
|
||||||
VP (Pass Pl Fem) => s_ + "egudes" ;
|
VP (Pass Pl Fem) => s_ + "egudes" ;
|
||||||
VP (Pass Sg Fem) => s_ + "eguda" ;
|
VP (Pass Sg Fem) => s_ + "eguda" ;
|
||||||
VP (Pass Pl Masc) => s_ + "eguts" ;
|
VP (Pass Pl Masc) => s_ + "eguts" ;
|
||||||
@@ -5345,7 +5349,7 @@ let t_ = Predef.tk 5 t
|
|||||||
{s = table {
|
{s = table {
|
||||||
VI Ger => t_ + "orcent" ;
|
VI Ger => t_ + "orcent" ;
|
||||||
VI Part => t_ + "ort" ;
|
VI Part => t_ + "ort" ;
|
||||||
VI Part => t_ + "orçut" ;
|
-- VI Part => t_ + "orçut" ; -- AR why duplicate?
|
||||||
VP (Pres Ind Pl P1) => t_ + "orcem" ;
|
VP (Pres Ind Pl P1) => t_ + "orcem" ;
|
||||||
VP (Pres Ind Sg P1) => t_ + "orcem" ;
|
VP (Pres Ind Sg P1) => t_ + "orcem" ;
|
||||||
VP (Pres Ind Pl P2) => t_ + "orceu" ;
|
VP (Pres Ind Pl P2) => t_ + "orceu" ;
|
||||||
@@ -5398,17 +5402,17 @@ let t_ = Predef.tk 5 t
|
|||||||
VP (Imp Pl P2) => t_ + "orceu" ;
|
VP (Imp Pl P2) => t_ + "orceu" ;
|
||||||
VP (Imp Sg P2) => t_ + "orç" ;
|
VP (Imp Sg P2) => t_ + "orç" ;
|
||||||
VP (Imp Pl P3) => t_ + "orcen" ;
|
VP (Imp Pl P3) => t_ + "orcen" ;
|
||||||
VP (Imp Pl P3) => t_ + "orcin" ;
|
-- VP (Imp Pl P3) => t_ + "orcin" ;
|
||||||
VP (Imp Sg P3) => t_ + "orci" ;
|
VP (Imp Sg P3) => t_ + "orci" ;
|
||||||
VP (Imp Sg P3) => t_ + "orça" ;
|
-- VP (Imp Sg P3) => t_ + "orça" ;
|
||||||
VP (Pass Pl Fem) => t_ + "ortes" ;
|
VP (Pass Pl Fem) => t_ + "ortes" ;
|
||||||
VP (Pass Pl Fem) => t_ + "orçudes" ;
|
-- VP (Pass Pl Fem) => t_ + "orçudes" ;
|
||||||
VP (Pass Sg Fem) => t_ + "orta" ;
|
VP (Pass Sg Fem) => t_ + "orta" ;
|
||||||
VP (Pass Sg Fem) => t_ + "orçuda" ;
|
-- VP (Pass Sg Fem) => t_ + "orçuda" ;
|
||||||
VP (Pass Pl Masc) => t_ + "orts" ;
|
VP (Pass Pl Masc) => t_ + "orts" ;
|
||||||
VP (Pass Pl Masc) => t_ + "orçuts" ;
|
-- VP (Pass Pl Masc) => t_ + "orçuts" ;
|
||||||
VP (Pass Sg Masc) => t_ + "ort" ;
|
VP (Pass Sg Masc) => t_ + "ort" ;
|
||||||
VP (Pass Sg Masc) => t_ + "orçut" ;
|
-- VP (Pass Sg Masc) => t_ + "orçut" ;
|
||||||
VI Infn => t_ + "òrcer" ;
|
VI Infn => t_ + "òrcer" ;
|
||||||
VP (Imp Sg P1) => variants {}
|
VP (Imp Sg P1) => variants {}
|
||||||
}
|
}
|
||||||
@@ -5960,6 +5964,7 @@ let x_ = Predef.tk 5 voler in
|
|||||||
VP (Pass Sg Fem) => x_ + "olguda" ;
|
VP (Pass Sg Fem) => x_ + "olguda" ;
|
||||||
VP (Pass Pl Masc) => x_ + "olguts" ;
|
VP (Pass Pl Masc) => x_ + "olguts" ;
|
||||||
VP (Pass Sg Masc) => x_ + "olgut" ;
|
VP (Pass Sg Masc) => x_ + "olgut" ;
|
||||||
|
{- AR commented out duplicates 22/6/2009
|
||||||
VI Infn => x_ + "oler" ;
|
VI Infn => x_ + "oler" ;
|
||||||
VI Ger => x_ + "olent" ;
|
VI Ger => x_ + "olent" ;
|
||||||
VI Part => x_ + "olgut" ;
|
VI Part => x_ + "olgut" ;
|
||||||
@@ -6014,6 +6019,7 @@ let x_ = Predef.tk 5 voler in
|
|||||||
VP (Pass Sg Fem) => x_ + "olguda" ;
|
VP (Pass Sg Fem) => x_ + "olguda" ;
|
||||||
VP (Pass Pl Masc) => x_ + "olguts" ;
|
VP (Pass Pl Masc) => x_ + "olguts" ;
|
||||||
VP (Pass Sg Masc) => x_ + "olgut" ;
|
VP (Pass Sg Masc) => x_ + "olgut" ;
|
||||||
|
-}
|
||||||
VP (Imp Sg P1) => variants {}
|
VP (Imp Sg P1) => variants {}
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -360,6 +360,6 @@ lin
|
|||||||
ready_A = regA "preparat" ;
|
ready_A = regA "preparat" ;
|
||||||
reason_N = regFN "raó" ;
|
reason_N = regFN "raó" ;
|
||||||
uncertain_A = regA "incert" ;
|
uncertain_A = regA "incert" ;
|
||||||
have_V2 = dirV2 (verbV (tenir_108 "tenir")) ;
|
|
||||||
|
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -161,7 +161,7 @@ lin
|
|||||||
"vosté" "li" "li" "vosté"
|
"vosté" "li" "li" "vosté"
|
||||||
["el seu"] ["la seva"] ["els seus"] ["les seves"]
|
["el seu"] ["la seva"] ["els seus"] ["les seves"]
|
||||||
Fem Pl P2 ;
|
Fem Pl P2 ;
|
||||||
|
have_V2 = dirV2 (verbV (tenir_108 "tenir")) ;
|
||||||
oper
|
oper
|
||||||
etConj : {s : Str ; n : MorphoCat.Number} = {s = "i" } ** {n = Pl} ;
|
etConj : {s : Str ; n : MorphoCat.Number} = {s = "i" } ** {n = Pl} ;
|
||||||
|
|
||||||
|
|||||||
@@ -273,7 +273,7 @@ oper
|
|||||||
case p of {
|
case p of {
|
||||||
Neg => "kö" ; -- eikö tule
|
Neg => "kö" ; -- eikö tule
|
||||||
_ => case a of {
|
_ => case a of {
|
||||||
Anter => "ko" ; -- onko mennyt
|
Anter => "ko" ; -- onko mennyt --# notpresent
|
||||||
_ => vp.qp -- tuleeko, meneekö
|
_ => vp.qp -- tuleeko, meneekö
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -276,10 +276,6 @@ oper
|
|||||||
|
|
||||||
lin
|
lin
|
||||||
not_Predet = {s = \\_,_ => "vain"} ;
|
not_Predet = {s = \\_,_ => "vain"} ;
|
||||||
nothing_but_Predet =
|
|
||||||
{s = \\n,c => "ei" ++ mikaanPron ! n ! npform2case n c ++ "paitsi"} ;
|
|
||||||
nobody_but_Predet =
|
|
||||||
{s = \\n,c => "ei" ++ kukaanPron ! n ! npform2case n c ++ "paitsi"} ;
|
|
||||||
|
|
||||||
no_Quant = heavyQuant {
|
no_Quant = heavyQuant {
|
||||||
s1 = \\n,c => "ei" ++ mikaanPron ! n ! c ;
|
s1 = \\n,c => "ei" ++ mikaanPron ! n ! c ;
|
||||||
|
|||||||
@@ -56,7 +56,6 @@ concrete CatGer of Cat =
|
|||||||
sp : Number => Gender => Case => Str ;
|
sp : Number => Gender => Case => Str ;
|
||||||
a : Adjf
|
a : Adjf
|
||||||
} ;
|
} ;
|
||||||
Art = {s : Bool => Number => Gender => Case => Str ; a : Adjf} ;
|
|
||||||
Predet = {s : Number => Gender => Case => Str ; c : PredetCase} ;
|
Predet = {s : Number => Gender => Case => Str ; c : PredetCase} ;
|
||||||
Num = {s : Gender => Case => Str ; n : Number ; isNum : Bool} ;
|
Num = {s : Gender => Case => Str ; n : Number ; isNum : Bool} ;
|
||||||
Card = {s : Gender => Case => Str ; n : Number} ;
|
Card = {s : Gender => Case => Str ; n : Number} ;
|
||||||
|
|||||||
@@ -143,11 +143,10 @@ resource ResGer = ParamX ** open Prelude in {
|
|||||||
|
|
||||||
vFin : Bool -> Mood -> Tense -> Agr -> VForm = \b,m,t,a ->
|
vFin : Bool -> Mood -> Tense -> Agr -> VForm = \b,m,t,a ->
|
||||||
case <t,m> of {
|
case <t,m> of {
|
||||||
<Pres,MIndic> => VFin b (VPresInd a.n a.p) ;
|
|
||||||
<Pres,MConjunct> => VFin b (VPresSubj a.n a.p) ;
|
|
||||||
<Past,MIndic> => VFin b (VImpfInd a.n a.p) ; --# notpresent
|
<Past,MIndic> => VFin b (VImpfInd a.n a.p) ; --# notpresent
|
||||||
<Past,MConjunct> => VFin b (VImpfSubj a.n a.p) ; --# notpresent
|
<Past,MConjunct> => VFin b (VImpfSubj a.n a.p) ; --# notpresent
|
||||||
_ => VInf False --- never used
|
<Pres,MIndic> => VFin b (VPresInd a.n a.p) ;
|
||||||
|
<Pres,MConjunct> => VFin b (VPresSubj a.n a.p)
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
conjAgr : Agr -> Agr -> Agr = \a,b -> {
|
conjAgr : Agr -> Agr -> Agr = \a,b -> {
|
||||||
|
|||||||
41
next-lib/src/hindi/SymbolHin.gf
Normal file
41
next-lib/src/hindi/SymbolHin.gf
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
--# -path=.:abstract:common
|
||||||
|
|
||||||
|
concrete SymbolHin of Symbol = CatHin ** open Prelude, ResHin in {
|
||||||
|
|
||||||
|
{- TODO!
|
||||||
|
lin
|
||||||
|
SymbPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
IntPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
FloatPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
NumPN i = {s = i.s ; g = Neutr} ;
|
||||||
|
CNIntNP cn i = {
|
||||||
|
s = \\c => cn.s ! Sg ! Nom ++ (addGenitiveS i.s) ! c ;
|
||||||
|
a = agrgP3 Sg cn.g
|
||||||
|
} ;
|
||||||
|
CNSymbNP det cn xs = {
|
||||||
|
s = \\c => det.s ++ cn.s ! det.n ! Nom ++ (addGenitiveS xs.s) ! c ;
|
||||||
|
a = agrgP3 det.n cn.g
|
||||||
|
} ;
|
||||||
|
CNNumNP cn i = {
|
||||||
|
s = \\c => cn.s ! Sg ! Nom ++ i.s ! c ;
|
||||||
|
a = agrgP3 Sg cn.g
|
||||||
|
} ;
|
||||||
|
|
||||||
|
SymbS sy = sy ;
|
||||||
|
|
||||||
|
SymbNum sy = { s = addGenitiveS sy.s ; n = Pl ; hasCard = True } ;
|
||||||
|
SymbOrd sy = { s = \\c => sy.s ++ (regGenitiveS "th")!c} ;
|
||||||
|
-}
|
||||||
|
|
||||||
|
lincat
|
||||||
|
|
||||||
|
Symb, [Symb] = SS ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
MkSymb s = s ;
|
||||||
|
|
||||||
|
-- BaseSymb = infixSS "and" ;
|
||||||
|
ConsSymb = infixSS "," ;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -115,9 +115,9 @@ resource ResIna = ParamX ** open Prelude in {
|
|||||||
s = table {
|
s = table {
|
||||||
VInf => crear;
|
VInf => crear;
|
||||||
VPres => crea;
|
VPres => crea;
|
||||||
VPast => crea + "va";
|
VPast => crea + "va"; --# notpresent
|
||||||
VFut => crear + "a";
|
VFut => crear + "a"; --# notpresent
|
||||||
VCond => crear + "ea";
|
VCond => crear + "ea"; --# notpresent
|
||||||
VPPart => case crear of {
|
VPPart => case crear of {
|
||||||
rid + "er" => rid + "ite";
|
rid + "er" => rid + "ite";
|
||||||
_ => crea + "te"
|
_ => crea + "te"
|
||||||
@@ -134,9 +134,9 @@ resource ResIna = ParamX ** open Prelude in {
|
|||||||
s = case use_irreg of {
|
s = case use_irreg of {
|
||||||
True => table {
|
True => table {
|
||||||
VPres => "es";
|
VPres => "es";
|
||||||
VFut => "sera";
|
VFut => "sera"; --# notpresent
|
||||||
VCond => "serea";
|
VCond => "serea"; --# notpresent
|
||||||
VPast => "era";
|
VPast => "era"; --# notpresent
|
||||||
form => reg.s!form
|
form => reg.s!form
|
||||||
};
|
};
|
||||||
False => reg.s
|
False => reg.s
|
||||||
@@ -233,8 +233,9 @@ resource ResIna = ParamX ** open Prelude in {
|
|||||||
clitics = \\_ => [];
|
clitics = \\_ => [];
|
||||||
rest = \\_ => [];
|
rest = \\_ => [];
|
||||||
s = table
|
s = table
|
||||||
{Simul => \\t,use_irreg => {fin = (verb!use_irreg).s ! (tenseToVFrom!t); inf = []};
|
{Simul => \\t,use_irreg => {fin = (verb!use_irreg).s ! (tenseToVFrom!t); inf = []}
|
||||||
Anter => \\t,use_irreg => {fin = (haberV!use_irreg).s ! (tenseToVFrom!t); inf = (verb!use_irreg).s!VPPart}
|
; --# notpresent
|
||||||
|
Anter => \\t,use_irreg => {fin = (haberV!use_irreg).s ! (tenseToVFrom!t); inf = (verb!use_irreg).s!VPPart} --# notpresent
|
||||||
};
|
};
|
||||||
prp = (verb!False).s ! VPresPart;
|
prp = (verb!False).s ! VPresPart;
|
||||||
inf = (verb!False).s ! VInf;
|
inf = (verb!False).s ! VInf;
|
||||||
|
|||||||
41
next-lib/src/interlingua/SymbolIna.gf
Normal file
41
next-lib/src/interlingua/SymbolIna.gf
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
--# -path=.:abstract:common
|
||||||
|
|
||||||
|
concrete SymbolIna of Symbol = CatIna ** open Prelude, ResIna in {
|
||||||
|
|
||||||
|
{- TODO!
|
||||||
|
lin
|
||||||
|
SymbPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
IntPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
FloatPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
NumPN i = {s = i.s ; g = Neutr} ;
|
||||||
|
CNIntNP cn i = {
|
||||||
|
s = \\c => cn.s ! Sg ! Nom ++ (addGenitiveS i.s) ! c ;
|
||||||
|
a = agrgP3 Sg cn.g
|
||||||
|
} ;
|
||||||
|
CNSymbNP det cn xs = {
|
||||||
|
s = \\c => det.s ++ cn.s ! det.n ! Nom ++ (addGenitiveS xs.s) ! c ;
|
||||||
|
a = agrgP3 det.n cn.g
|
||||||
|
} ;
|
||||||
|
CNNumNP cn i = {
|
||||||
|
s = \\c => cn.s ! Sg ! Nom ++ i.s ! c ;
|
||||||
|
a = agrgP3 Sg cn.g
|
||||||
|
} ;
|
||||||
|
|
||||||
|
SymbS sy = sy ;
|
||||||
|
|
||||||
|
SymbNum sy = { s = addGenitiveS sy.s ; n = Pl ; hasCard = True } ;
|
||||||
|
SymbOrd sy = { s = \\c => sy.s ++ (regGenitiveS "th")!c} ;
|
||||||
|
-}
|
||||||
|
|
||||||
|
lincat
|
||||||
|
|
||||||
|
Symb, [Symb] = SS ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
MkSymb s = s ;
|
||||||
|
|
||||||
|
-- BaseSymb = infixSS "and" ;
|
||||||
|
ConsSymb = infixSS "," ;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -153,9 +153,6 @@ lin
|
|||||||
"Lei" "La" "Le" "Glie" "Lei" "Suo" "Sua" "Suoi" "Sue"
|
"Lei" "La" "Le" "Glie" "Lei" "Suo" "Sua" "Suoi" "Sue"
|
||||||
Masc Sg P3 ;
|
Masc Sg P3 ;
|
||||||
not_Predet = {s = \\a,c => prepCase c ++ "non" ; c = Nom} ;
|
not_Predet = {s = \\a,c => prepCase c ++ "non" ; c = Nom} ;
|
||||||
nothing_but_Predet = {s = \\a,c => prepCase c ++ "niente eccetto" ; c = Nom} ;
|
|
||||||
nobody_but_Predet = {s = \\a,c => prepCase c ++ "nessun eccetto" ; c = Nom} ;
|
|
||||||
|
|
||||||
|
|
||||||
no_Quant =
|
no_Quant =
|
||||||
let aucun : ParadigmsIta.Number => ParadigmsIta.Gender => Case => Str = table {
|
let aucun : ParadigmsIta.Number => ParadigmsIta.Gender => Case => Str = table {
|
||||||
|
|||||||
@@ -97,24 +97,32 @@ concrete SentenceRus of Sentence = CatRus ** open Prelude, ResRus in {
|
|||||||
|
|
||||||
UseCl t p cl = {s = case t.t of {
|
UseCl t p cl = {s = case t.t of {
|
||||||
Cond => cl.s! p.p ! ClCondit ; --# notpresent
|
Cond => cl.s! p.p ! ClCondit ; --# notpresent
|
||||||
Pres => cl.s! p.p ! ClIndic Present t.a ; ---- AR work-around 13/12/2007
|
Pres => cl.s! p.p ! ClIndic Present t.a ---- AR work-around 13/12/2007
|
||||||
_ => cl.s! p.p ! ClIndic (getTense t.t) t.a}};
|
; --# notpresent
|
||||||
|
_ => cl.s! p.p ! ClIndic (getTense t.t) t.a --# notpresent
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
UseQCl t p qcl= {s = case t.t of {
|
UseQCl t p qcl= {s = case t.t of {
|
||||||
Cond => qcl.s! p.p ! ClCondit ; --# notpresent
|
Cond => qcl.s! p.p ! ClCondit ; --# notpresent
|
||||||
Pres => qcl.s! p.p ! ClIndic Present t.a ;
|
Pres => qcl.s! p.p ! ClIndic Present t.a
|
||||||
_ => qcl.s!p.p! ClIndic (getTense t.t) t.a }};
|
; --# notpresent
|
||||||
|
_ => qcl.s!p.p! ClIndic (getTense t.t) t.a --# notpresent
|
||||||
|
}};
|
||||||
|
|
||||||
UseRCl t p rcl ={s = \\gn,c,anim => case t.t of {
|
UseRCl t p rcl ={s = \\gn,c,anim => case t.t of {
|
||||||
Cond => [", "] ++ rcl.s! p.p ! ClCondit ! gn !c !anim ; --# notpresent
|
Cond => [", "] ++ rcl.s! p.p ! ClCondit ! gn !c !anim ; --# notpresent
|
||||||
Pres => [", "] ++ rcl.s! p.p ! ClIndic Present t.a !gn !c !anim;
|
Pres => [", "] ++ rcl.s! p.p ! ClIndic Present t.a !gn !c !anim
|
||||||
_ => [", "] ++ rcl.s! p.p ! ClIndic (getTense t.t) t.a !gn !c !anim}};
|
; --# notpresent
|
||||||
|
_ => [", "] ++ rcl.s! p.p ! ClIndic (getTense t.t) t.a !gn !c !anim --# notpresent
|
||||||
|
}};
|
||||||
|
|
||||||
UseSlash t p cl = {
|
UseSlash t p cl = {
|
||||||
s = case t.t of {
|
s = case t.t of {
|
||||||
Cond => cl.s! p.p ! ClCondit ; --# notpresent
|
Cond => cl.s! p.p ! ClCondit ; --# notpresent
|
||||||
Pres => cl.s! p.p ! ClIndic Present t.a ;
|
Pres => cl.s! p.p ! ClIndic Present t.a
|
||||||
_ => cl.s! p.p ! ClIndic (getTense t.t) t.a
|
; --# notpresent
|
||||||
|
_ => cl.s! p.p ! ClIndic (getTense t.t) t.a --# notpresent
|
||||||
} ;
|
} ;
|
||||||
s2 = cl.s2 ;
|
s2 = cl.s2 ;
|
||||||
c = cl.c
|
c = cl.c
|
||||||
|
|||||||
41
next-lib/src/russian/SymbolRus.gf
Normal file
41
next-lib/src/russian/SymbolRus.gf
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
--# -path=.:abstract:common
|
||||||
|
|
||||||
|
concrete SymbolRus of Symbol = CatRus ** open Prelude, ResRus in {
|
||||||
|
|
||||||
|
{- TODO!
|
||||||
|
lin
|
||||||
|
SymbPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
IntPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
FloatPN i = {s = addGenitiveS i.s ; g = Neutr} ;
|
||||||
|
NumPN i = {s = i.s ; g = Neutr} ;
|
||||||
|
CNIntNP cn i = {
|
||||||
|
s = \\c => cn.s ! Sg ! Nom ++ (addGenitiveS i.s) ! c ;
|
||||||
|
a = agrgP3 Sg cn.g
|
||||||
|
} ;
|
||||||
|
CNSymbNP det cn xs = {
|
||||||
|
s = \\c => det.s ++ cn.s ! det.n ! Nom ++ (addGenitiveS xs.s) ! c ;
|
||||||
|
a = agrgP3 det.n cn.g
|
||||||
|
} ;
|
||||||
|
CNNumNP cn i = {
|
||||||
|
s = \\c => cn.s ! Sg ! Nom ++ i.s ! c ;
|
||||||
|
a = agrgP3 Sg cn.g
|
||||||
|
} ;
|
||||||
|
|
||||||
|
SymbS sy = sy ;
|
||||||
|
|
||||||
|
SymbNum sy = { s = addGenitiveS sy.s ; n = Pl ; hasCard = True } ;
|
||||||
|
SymbOrd sy = { s = \\c => sy.s ++ (regGenitiveS "th")!c} ;
|
||||||
|
-}
|
||||||
|
|
||||||
|
lincat
|
||||||
|
|
||||||
|
Symb, [Symb] = SS ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
MkSymb s = s ;
|
||||||
|
|
||||||
|
-- BaseSymb = infixSS "and" ;
|
||||||
|
ConsSymb = infixSS "," ;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -101,9 +101,9 @@ oper
|
|||||||
-- Used in $DiffScand.predV$.
|
-- Used in $DiffScand.predV$.
|
||||||
|
|
||||||
vFin : Tense -> Voice -> VForm = \t,v -> case t of {
|
vFin : Tense -> Voice -> VForm = \t,v -> case t of {
|
||||||
Pres => VF (VPres v) ;
|
Pres => VF (VPres v)
|
||||||
Past => VF (VPret v) ; --# notpresent
|
; --# notpresent
|
||||||
_ => VI (VInfin v) --- not to be used?
|
Past => VF (VPret v) --# notpresent
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- Used in $ConjunctionScand$.
|
-- Used in $ConjunctionScand$.
|
||||||
|
|||||||
@@ -58,8 +58,8 @@ incomplete concrete NounScand of Noun =
|
|||||||
let
|
let
|
||||||
md : Bool -> Bool = \b -> case quant.det of {
|
md : Bool -> Bool = \b -> case quant.det of {
|
||||||
DDef _ => orB b num.isDet ;
|
DDef _ => orB b num.isDet ;
|
||||||
DIndef => num.isDet ;
|
DIndef => num.isDet
|
||||||
_ => False
|
-- _ => False
|
||||||
}
|
}
|
||||||
in {
|
in {
|
||||||
s = \\b,g => quant.s ! num.n ! b ! md b ! g ++
|
s = \\b,g => quant.s ! num.n ! b ! md b ! g ++
|
||||||
|
|||||||
@@ -787,10 +787,12 @@ checkLType env trm typ0 = do
|
|||||||
ps <- checkErr $ testOvershadow ps0 vs
|
ps <- checkErr $ testOvershadow ps0 vs
|
||||||
if null ps
|
if null ps
|
||||||
then return ()
|
then return ()
|
||||||
|
else raise $ "patterns never reached:" +++
|
||||||
|
concat (intersperse ", " (map prt ps))
|
||||||
---- else checkWarn $ "patterns never reached:" +++
|
---- else checkWarn $ "patterns never reached:" +++
|
||||||
---- concat (intersperse ", " (map prt ps))
|
---- concat (intersperse ", " (map prt ps))
|
||||||
else trace ("WARNING: patterns never reached:" +++
|
---- else trace ("WARNING: patterns never reached:" +++
|
||||||
concat (intersperse ", " (map prt ps))) (return ())
|
---- concat (intersperse ", " (map prt ps))) (return ())
|
||||||
---- AR 6/4/2009: checkWarn doesn't show because of laziness (?)
|
---- AR 6/4/2009: checkWarn doesn't show because of laziness (?)
|
||||||
|
|
||||||
_ -> return () -- happens with variable types
|
_ -> return () -- happens with variable types
|
||||||
|
|||||||
Reference in New Issue
Block a user