mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-11 05:49:31 -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}
|
||||
= case <t,a> of {
|
||||
<Pres,Simul> => {aux1=[]; aux2=[]; main=present} ;
|
||||
<Pres,Anter> => {aux1=[]; aux2=auxPres; main=perfect} ;
|
||||
<Past,Simul> => {aux1=[]; aux2=[]; main=aorist} ;
|
||||
<Past,Anter> => {aux1=[]; aux2=auxAorist; main=perfect} ;
|
||||
<Fut, Simul> => {aux1="ùå"; aux2=[]; main=present} ;
|
||||
<Fut, Anter> => {aux1="ùå"++auxPres; aux2=[]; main=perfect} ;
|
||||
<Cond,_> => {aux1=auxCondS; aux2=[]; main=perfect}
|
||||
<Pres,Simul> => {aux1=[]; aux2=[]; main=present}
|
||||
; --# notpresent
|
||||
<Pres,Anter> => {aux1=[]; aux2=auxPres; main=perfect} ; --# notpresent
|
||||
<Past,Simul> => {aux1=[]; aux2=[]; main=aorist} ; --# notpresent
|
||||
<Past,Anter> => {aux1=[]; aux2=auxAorist; main=perfect} ; --# notpresent
|
||||
<Fut, Simul> => {aux1="ùå"; aux2=[]; main=present} ; --# notpresent
|
||||
<Fut, Anter> => {aux1="ùå"++auxPres; aux2=[]; main=perfect} ; --# notpresent
|
||||
<Cond,_> => {aux1=auxCondS; aux2=[]; main=perfect} --# notpresent
|
||||
} ;
|
||||
|
||||
in case o of {
|
||||
|
||||
@@ -454,13 +454,14 @@ resource ResBul = ParamX ** open Prelude in {
|
||||
|
||||
verbs : {aux:{s1:Str; s2:Str}; main:Str} =
|
||||
case <t,a> of {
|
||||
<Pres,Simul> => {aux=vf2 clitic.s; main=presentImperf} ;
|
||||
<Pres,Anter> => {aux=vf1 clitic.s; main=perfect} ;
|
||||
<Past,Simul> => {aux=vf2 clitic.s; main=aorist} ;
|
||||
<Past,Anter> => {aux=vf4 auxAorist; main=perfect} ;
|
||||
<Fut, Simul> => {aux=vf3 clitic.s; main=present} ;
|
||||
<Fut, Anter> => {aux=vf3 (apc []); main=perfect} ;
|
||||
<Cond,_ > => {aux=vf4 auxCond ; main=perfect}
|
||||
<Pres,Simul> => {aux=vf2 clitic.s; main=presentImperf}
|
||||
; --# notpresent
|
||||
<Pres,Anter> => {aux=vf1 clitic.s; main=perfect} ; --# notpresent
|
||||
<Past,Simul> => {aux=vf2 clitic.s; main=aorist} ; --# notpresent
|
||||
<Past,Anter> => {aux=vf4 auxAorist; main=perfect} ; --# notpresent
|
||||
<Fut, Simul> => {aux=vf3 clitic.s; main=present} ; --# notpresent
|
||||
<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 ;
|
||||
|
||||
@@ -2026,6 +2026,9 @@ let x_ = Predef.tk 5 deure in
|
||||
VP (Pass Sg Fem) => x_ + "guda" ;
|
||||
VP (Pass Pl Masc) => x_ + "guts" ;
|
||||
VP (Pass Sg Masc) => x_ + "gut" ;
|
||||
|
||||
|
||||
{- -- AR removed these duplicates
|
||||
VI Infn => x_ + "ure" ;
|
||||
VI Ger => x_ + "vent" ;
|
||||
VI Part => x_ + "gut" ;
|
||||
@@ -2075,6 +2078,7 @@ let x_ = Predef.tk 5 deure in
|
||||
VP (Pass Sg Fem) => x_ + "guda" ;
|
||||
VP (Pass Pl Masc) => x_ + "guts" ;
|
||||
VP (Pass Sg Masc) => x_ + "gut" ;
|
||||
-}
|
||||
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 Sub Pl P1) => s_ + "eguem" ;
|
||||
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 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_ + "eguin" ;
|
||||
-- VP (Pres Sub Pl P3) => s_ + "eguin" ;
|
||||
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 P2) => s_ + "eies" ;--# 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 Sg P2) => s_ + "eu" ;
|
||||
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_ + "egui" ;
|
||||
-- VP (Imp Sg P3) => s_ + "egui" ;
|
||||
VP (Pass Pl Fem) => s_ + "egudes" ;
|
||||
VP (Pass Sg Fem) => s_ + "eguda" ;
|
||||
VP (Pass Pl Masc) => s_ + "eguts" ;
|
||||
@@ -5345,7 +5349,7 @@ let t_ = Predef.tk 5 t
|
||||
{s = table {
|
||||
VI Ger => t_ + "orcent" ;
|
||||
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 Sg P1) => t_ + "orcem" ;
|
||||
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 Sg P2) => t_ + "orç" ;
|
||||
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_ + "orça" ;
|
||||
-- VP (Imp Sg P3) => t_ + "orça" ;
|
||||
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_ + "orçuda" ;
|
||||
-- VP (Pass Sg Fem) => t_ + "orçuda" ;
|
||||
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_ + "orçut" ;
|
||||
-- VP (Pass Sg Masc) => t_ + "orçut" ;
|
||||
VI Infn => t_ + "òrcer" ;
|
||||
VP (Imp Sg P1) => variants {}
|
||||
}
|
||||
@@ -5960,6 +5964,7 @@ let x_ = Predef.tk 5 voler in
|
||||
VP (Pass Sg Fem) => x_ + "olguda" ;
|
||||
VP (Pass Pl Masc) => x_ + "olguts" ;
|
||||
VP (Pass Sg Masc) => x_ + "olgut" ;
|
||||
{- AR commented out duplicates 22/6/2009
|
||||
VI Infn => x_ + "oler" ;
|
||||
VI Ger => x_ + "olent" ;
|
||||
VI Part => x_ + "olgut" ;
|
||||
@@ -6014,6 +6019,7 @@ let x_ = Predef.tk 5 voler in
|
||||
VP (Pass Sg Fem) => x_ + "olguda" ;
|
||||
VP (Pass Pl Masc) => x_ + "olguts" ;
|
||||
VP (Pass Sg Masc) => x_ + "olgut" ;
|
||||
-}
|
||||
VP (Imp Sg P1) => variants {}
|
||||
}
|
||||
} ;
|
||||
|
||||
@@ -360,6 +360,6 @@ lin
|
||||
ready_A = regA "preparat" ;
|
||||
reason_N = regFN "raó" ;
|
||||
uncertain_A = regA "incert" ;
|
||||
have_V2 = dirV2 (verbV (tenir_108 "tenir")) ;
|
||||
|
||||
|
||||
} ;
|
||||
|
||||
@@ -161,7 +161,7 @@ lin
|
||||
"vosté" "li" "li" "vosté"
|
||||
["el seu"] ["la seva"] ["els seus"] ["les seves"]
|
||||
Fem Pl P2 ;
|
||||
|
||||
have_V2 = dirV2 (verbV (tenir_108 "tenir")) ;
|
||||
oper
|
||||
etConj : {s : Str ; n : MorphoCat.Number} = {s = "i" } ** {n = Pl} ;
|
||||
|
||||
|
||||
@@ -273,7 +273,7 @@ oper
|
||||
case p of {
|
||||
Neg => "kö" ; -- eikö tule
|
||||
_ => case a of {
|
||||
Anter => "ko" ; -- onko mennyt
|
||||
Anter => "ko" ; -- onko mennyt --# notpresent
|
||||
_ => vp.qp -- tuleeko, meneekö
|
||||
}
|
||||
} ;
|
||||
|
||||
@@ -276,10 +276,6 @@ oper
|
||||
|
||||
lin
|
||||
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 {
|
||||
s1 = \\n,c => "ei" ++ mikaanPron ! n ! c ;
|
||||
|
||||
@@ -56,7 +56,6 @@ concrete CatGer of Cat =
|
||||
sp : Number => Gender => Case => Str ;
|
||||
a : Adjf
|
||||
} ;
|
||||
Art = {s : Bool => Number => Gender => Case => Str ; a : Adjf} ;
|
||||
Predet = {s : Number => Gender => Case => Str ; c : PredetCase} ;
|
||||
Num = {s : Gender => Case => Str ; n : Number ; isNum : Bool} ;
|
||||
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 ->
|
||||
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,MConjunct> => VFin b (VImpfSubj a.n a.p) ; --# notpresent
|
||||
_ => VInf False --- never used
|
||||
<Past,MConjunct> => VFin b (VImpfSubj a.n a.p) ; --# notpresent
|
||||
<Pres,MIndic> => VFin b (VPresInd a.n a.p) ;
|
||||
<Pres,MConjunct> => VFin b (VPresSubj a.n a.p)
|
||||
} ;
|
||||
|
||||
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 {
|
||||
VInf => crear;
|
||||
VPres => crea;
|
||||
VPast => crea + "va";
|
||||
VFut => crear + "a";
|
||||
VCond => crear + "ea";
|
||||
VPast => crea + "va"; --# notpresent
|
||||
VFut => crear + "a"; --# notpresent
|
||||
VCond => crear + "ea"; --# notpresent
|
||||
VPPart => case crear of {
|
||||
rid + "er" => rid + "ite";
|
||||
_ => crea + "te"
|
||||
@@ -134,9 +134,9 @@ resource ResIna = ParamX ** open Prelude in {
|
||||
s = case use_irreg of {
|
||||
True => table {
|
||||
VPres => "es";
|
||||
VFut => "sera";
|
||||
VCond => "serea";
|
||||
VPast => "era";
|
||||
VFut => "sera"; --# notpresent
|
||||
VCond => "serea"; --# notpresent
|
||||
VPast => "era"; --# notpresent
|
||||
form => reg.s!form
|
||||
};
|
||||
False => reg.s
|
||||
@@ -233,8 +233,9 @@ resource ResIna = ParamX ** open Prelude in {
|
||||
clitics = \\_ => [];
|
||||
rest = \\_ => [];
|
||||
s = table
|
||||
{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}
|
||||
{Simul => \\t,use_irreg => {fin = (verb!use_irreg).s ! (tenseToVFrom!t); inf = []}
|
||||
; --# notpresent
|
||||
Anter => \\t,use_irreg => {fin = (haberV!use_irreg).s ! (tenseToVFrom!t); inf = (verb!use_irreg).s!VPPart} --# notpresent
|
||||
};
|
||||
prp = (verb!False).s ! VPresPart;
|
||||
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"
|
||||
Masc Sg P3 ;
|
||||
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 =
|
||||
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 {
|
||||
Cond => cl.s! p.p ! ClCondit ; --# notpresent
|
||||
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}};
|
||||
Pres => cl.s! p.p ! ClIndic Present t.a ---- AR work-around 13/12/2007
|
||||
; --# notpresent
|
||||
_ => cl.s! p.p ! ClIndic (getTense t.t) t.a --# notpresent
|
||||
}
|
||||
};
|
||||
|
||||
UseQCl t p qcl= {s = case t.t of {
|
||||
Cond => qcl.s! p.p ! ClCondit ; --# notpresent
|
||||
Pres => qcl.s! p.p ! ClIndic Present t.a ;
|
||||
_ => qcl.s!p.p! ClIndic (getTense t.t) t.a }};
|
||||
Pres => qcl.s! p.p ! ClIndic Present 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 {
|
||||
Cond => [", "] ++ rcl.s! p.p ! ClCondit ! gn !c !anim ; --# notpresent
|
||||
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}};
|
||||
Pres => [", "] ++ rcl.s! p.p ! ClIndic Present t.a !gn !c !anim
|
||||
; --# notpresent
|
||||
_ => [", "] ++ rcl.s! p.p ! ClIndic (getTense t.t) t.a !gn !c !anim --# notpresent
|
||||
}};
|
||||
|
||||
UseSlash t p cl = {
|
||||
s = case t.t of {
|
||||
Cond => cl.s! p.p ! ClCondit ; --# notpresent
|
||||
Pres => cl.s! p.p ! ClIndic Present t.a ;
|
||||
_ => cl.s! p.p ! ClIndic (getTense t.t) t.a
|
||||
Pres => cl.s! p.p ! ClIndic Present t.a
|
||||
; --# notpresent
|
||||
_ => cl.s! p.p ! ClIndic (getTense t.t) t.a --# notpresent
|
||||
} ;
|
||||
s2 = cl.s2 ;
|
||||
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$.
|
||||
|
||||
vFin : Tense -> Voice -> VForm = \t,v -> case t of {
|
||||
Pres => VF (VPres v) ;
|
||||
Past => VF (VPret v) ; --# notpresent
|
||||
_ => VI (VInfin v) --- not to be used?
|
||||
Pres => VF (VPres v)
|
||||
; --# notpresent
|
||||
Past => VF (VPret v) --# notpresent
|
||||
} ;
|
||||
|
||||
-- Used in $ConjunctionScand$.
|
||||
|
||||
@@ -58,8 +58,8 @@ incomplete concrete NounScand of Noun =
|
||||
let
|
||||
md : Bool -> Bool = \b -> case quant.det of {
|
||||
DDef _ => orB b num.isDet ;
|
||||
DIndef => num.isDet ;
|
||||
_ => False
|
||||
DIndef => num.isDet
|
||||
-- _ => False
|
||||
}
|
||||
in {
|
||||
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
|
||||
if null ps
|
||||
then return ()
|
||||
else raise $ "patterns never reached:" +++
|
||||
concat (intersperse ", " (map prt ps))
|
||||
---- else checkWarn $ "patterns never reached:" +++
|
||||
---- concat (intersperse ", " (map prt ps))
|
||||
else trace ("WARNING: patterns never reached:" +++
|
||||
concat (intersperse ", " (map prt ps))) (return ())
|
||||
---- else trace ("WARNING: patterns never reached:" +++
|
||||
---- concat (intersperse ", " (map prt ps))) (return ())
|
||||
---- AR 6/4/2009: checkWarn doesn't show because of laziness (?)
|
||||
|
||||
_ -> return () -- happens with variable types
|
||||
|
||||
Reference in New Issue
Block a user