checking name conflicts; some RGs don't work now

This commit is contained in:
aarne
2007-06-17 21:56:27 +00:00
parent adf0f8e83e
commit 3adf824e8e
13 changed files with 101 additions and 81 deletions

View File

@@ -12,20 +12,20 @@ concrete CatFin of Cat = CommonX ** open ResFin, Prelude in {
-- Sentence
Cl = {s : Tense => Anteriority => Polarity => SType => Str} ;
Slash = {s : Tense => Anteriority => Polarity => Str ; c2 : Compl} ;
Cl = {s : ResFin.Tense => Anteriority => Polarity => SType => Str} ;
Slash = {s : ResFin.Tense => Anteriority => Polarity => Str ; c2 : Compl} ;
Imp = {s : Polarity => Number => Str} ;
-- Question
QCl = {s : Tense => Anteriority => Polarity => Str} ;
QCl = {s : ResFin.Tense => Anteriority => Polarity => Str} ;
IP = {s : NPForm => Str ; n : Number} ;
IComp = {s : Agr => Str} ;
IDet = {s : Case => Str ; n : Number} ;
-- Relative
RCl = {s : Tense => Anteriority => Polarity => Agr => Str ; c : NPForm} ;
RCl = {s : ResFin.Tense => Anteriority => Polarity => Agr => Str ; c : NPForm} ;
RP = {s : Number => NPForm => Str ; a : RAgr} ;
-- Verb

View File

@@ -6,9 +6,9 @@ concrete NumeralFin of Numeral = CatFin ** open Prelude, ParadigmsFin, MorphoFi
flags optimize = all_subs ;
lincat
Sub1000000 = {s : CardOrd => Str ; n : Number} ;
Sub1000000 = {s : CardOrd => Str ; n : MorphoFin.Number} ;
Digit = {s : CardOrd => Str} ;
Sub10, Sub100, Sub1000 = {s : NumPlace => CardOrd => Str ; n : Number} ;
Sub10, Sub100, Sub1000 = {s : NumPlace => CardOrd => Str ; n : MorphoFin.Number} ;
lin
num x = x ;
@@ -120,7 +120,7 @@ oper
}
} ;
sataaN : {s : Number => CardOrd => Str} = {s = table {
sataaN : {s : MorphoFin.Number => CardOrd => Str} = {s = table {
Sg => sataN.s ;
Pl => table {
NCard (NCase Sg Nom) => "sataa" ;

View File

@@ -202,7 +202,6 @@ oper
regPN : Str -> PN ;
mkPN : N -> PN ;
mkNP : N -> Number -> NP ;
--2 Adjectives
@@ -475,6 +474,8 @@ reg3N = \vesi,veden,vesi
genN2 = \n -> mkN2 n (casePrep genitive) ;
regPN m = mkPN (regN m) ;
mkPN n = mkProperName n ** {lock_PN = <>} ;
mkNP : N -> Number -> CatFin.NP ;
mkNP noun num = {
s = \\c => noun.s ! NCase num (npform2case num c) ;
a = agrP3 num ;

View File

@@ -99,11 +99,11 @@ concrete StructuralFin of Structural = CatFin **
} ;
somewhere_Adv = ss "jossain" ;
that_Quant = {
s1 = table Number [
table Case {
s1 = table (MorphoFin.Number) [
table (MorphoFin.Case) {
c => (mkPronoun "tuo" "tuon" "tuota" "tuona" "tuohon" Sg P3).s ! NPCase c
} ;
table Case {
table (MorphoFin.Case) {
c => (mkPronoun "nuo" "noiden" "noita" "noina" "noihin" Sg P3).s ! NPCase c
}
] ;
@@ -121,11 +121,11 @@ concrete StructuralFin of Structural = CatFin **
{isPron = False} ;
they_Pron = mkPronoun "he" "heidän" "heitä" "heinä" "heihin" Pl P3 ; --- ne
this_Quant = {
s1 = table Number [
table Case {
s1 = table (MorphoFin.Number) [
table (MorphoFin.Case) {
c => (mkPronoun "tämä" "tämän" "tätä" "tänä" "tähän" Sg P3).s ! NPCase c
} ;
table Case {
table (MorphoFin.Case) {
c => (mkPronoun "nuo" "noiden" "noita" "noina" "noihin" Sg P3).s ! NPCase c
}
] ;
@@ -181,7 +181,7 @@ concrete StructuralFin of Structural = CatFin **
oper
jokuPron : Number => Case => Str =
jokuPron : MorphoFin.Number => (MorphoFin.Case) => Str =
let
ku = nhn (sPuu "ku") ;
kui = nhn (sPuu "kuu")
@@ -198,7 +198,7 @@ oper
}
} ;
jokinPron : Number => Case => Str =
jokinPron : MorphoFin.Number => (MorphoFin.Case) => Str =
table {
Sg => table {
Nom => "jokin" ;
@@ -211,7 +211,7 @@ oper
}
} ;
mikaInt : Number => Case => Str =
mikaInt : MorphoFin.Number => (MorphoFin.Case) => Str =
let {
mi = nhn (sSuo "mi")
} in
@@ -228,7 +228,7 @@ oper
}
} ;
kukaInt : Number => Case => Str =
kukaInt : MorphoFin.Number => (MorphoFin.Case) => Str =
let {
ku = nhn (sRae "kuka" "kenenä") ;
ket = nhn (sRae "kuka" "keinä")} in
@@ -245,7 +245,7 @@ oper
c => ket.s ! NCase Pl c
}
} ;
mikaanPron : Number => Case => Str = \\n,c =>
mikaanPron : MorphoFin.Number => (MorphoFin.Case) => Str = \\n,c =>
case <n,c> of {
<Sg,Nom> => "mikään" ;
<_,Part> => "mitään" ;
@@ -260,7 +260,7 @@ oper
_ => mikaInt ! n ! c + "kään"
} ;
kukaanPron : Number => Case => Str =
kukaanPron : MorphoFin.Number => (MorphoFin.Case) => Str =
table {
Sg => table {
Nom => "kukaan" ;