1
0
forked from GitHub/gf-rgl

(Cat) Update A,A2 to not have Degree

This commit is contained in:
Inari Listenmaa
2021-09-14 17:35:55 +08:00
parent e421518a36
commit 9620c738c5
4 changed files with 34 additions and 31 deletions

View File

@@ -64,7 +64,7 @@ oper
} }
} ; } ;
piuComp = "més" ;
possCase = \_,_,c -> prepCase c ; possCase = \_,_,c -> prepCase c ;

View File

@@ -45,8 +45,8 @@ lin
s1 = heading1 (nounHeading adjective_Category).s ; s1 = heading1 (nounHeading adjective_Category).s ;
s2 = frameTable ( s2 = frameTable (
tr (th "" ++ th (heading singular_Parameter) ++ th (heading plural_Parameter)) ++ tr (th "" ++ th (heading singular_Parameter) ++ th (heading plural_Parameter)) ++
tr (th (heading masculine_Parameter) ++ td (adj.s ! Posit ! (genNum2Aform Masc Sg)) ++ td (adj.s ! Posit ! (genNum2Aform Masc Pl))) ++ tr (th (heading masculine_Parameter) ++ td (adj.s ! genNum2Aform Masc Sg) ++ td (adj.s ! genNum2Aform Masc Pl)) ++
tr (th (heading feminine_Parameter) ++ td (adj.s ! Posit ! (genNum2Aform Fem Sg)) ++ td (adj.s ! Posit ! (genNum2Aform Fem Pl))) tr (th (heading feminine_Parameter) ++ td (adj.s ! genNum2Aform Fem Sg) ++ td (adj.s ! genNum2Aform Fem Pl))
) )
} ; } ;

View File

@@ -31,8 +31,8 @@ lin
big_A = mkA "gros" "grossa" ; big_A = mkA "gros" "grossa" ;
bike_N = regFN "bicicleta" ; bike_N = regFN "bicicleta" ;
bird_N = regMN "ocell" ; bird_N = regMN "ocell" ;
black_A = compADeg (mkA "negre" "negra" "negres" "negres" "negrament") ; black_A = mkA "negre" "negra" "negres" "negres" "negrament" ;
blue_A = compADeg (mkA "blau" "blava" "blaus" "blaves" "blavament") ; blue_A = mkA "blau" "blava" "blaus" "blaves" "blavament" ;
boat_N = regFN "barca" ; boat_N = regFN "barca" ;
book_N = regMN "llibre" ; book_N = regMN "llibre" ;
boot_N = regFN "bota" ; boot_N = regFN "bota" ;
@@ -42,7 +42,7 @@ lin
break_V2 = dirV2 (verbV (trencar_112 "trencar")) ; break_V2 = dirV2 (verbV (trencar_112 "trencar")) ;
broad_A = regADeg "ample" ; -- put it in MorphoCat?: like black_A broad_A = regADeg "ample" ; -- put it in MorphoCat?: like black_A
brother_N2 = deN2 (regMN "germà") ; brother_N2 = deN2 (regMN "germà") ;
brown_A = compADeg (mkA "marró" "marrona" "marrons" "marrones" "marronament") ; brown_A = mkA "marró" "marrona" "marrons" "marrones" "marronament" ;
butter_N = regFN "mantega" ; butter_N = regFN "mantega" ;
buy_V2 = dirV2 (mkV "comprar") ; buy_V2 = dirV2 (mkV "comprar") ;
camera_N = regFN "càmara" ; camera_N = regFN "càmara" ;
@@ -75,7 +75,7 @@ lin
drink_V2 = dirV2 (verbV (beure_11 "beure")) ; drink_V2 = dirV2 (verbV (beure_11 "beure")) ;
easy_A2V = mkA2V (regA "fácil") dative genitive ; easy_A2V = mkA2V (regA "fácil") dative genitive ;
eat_V2 = dirV2 (verbV (envejar_48 "menjar")) ; eat_V2 = dirV2 (verbV (envejar_48 "menjar")) ;
empty_A = compADeg (mkA "buit" "buida" "buits" "buides" "buidament") ; empty_A = mkA "buit" "buida" "buits" "buides" "buidament" ;
enemy_N = regMN "enemic" ; -- enemiga enemy_N = regMN "enemic" ; -- enemiga
factory_N = regFN "fàbrica" ; factory_N = regFN "fàbrica" ;
father_N2 = deN2 (regMN "pare") ; father_N2 = deN2 (regMN "pare") ;
@@ -132,7 +132,7 @@ lin
mountain_N = regFN "muntanya" ; mountain_N = regFN "muntanya" ;
music_N = regFN "música" ; music_N = regFN "música" ;
narrow_A = regADeg "estret" ; narrow_A = regADeg "estret" ;
new_A = prefixA (compADeg (mkA "nou" "nova" "nous" "noves" "novament")) ; new_A = prefixA (mkA "nou" "nova" "nous" "noves" "novament") ;
newspaper_N = regMN "diari" ; -- periòdic newspaper_N = regMN "diari" ; -- periòdic
oil_N = regMN "oli" ; oil_N = regMN "oli" ;
old_A = regADeg "vell" ; old_A = regADeg "vell" ;
@@ -195,23 +195,23 @@ lin
teacher_N = regMN "mestre" ; -- mestra teacher_N = regMN "mestre" ; -- mestra
teach_V2 = dirV2 (mkV "ensenyar") ; teach_V2 = dirV2 (mkV "ensenyar") ;
television_N = mkN "televisió" "televisions" feminine ; -- televisor masc television_N = mkN "televisió" "televisions" feminine ; -- televisor masc
thick_A = compADeg (mkA "gruixut" "gruixuda" "gruixuts" "gruixudes" "gruixudament") ; thick_A = mkA "gruixut" "gruixuda" "gruixuts" "gruixudes" "gruixudament" ;
thin_A = compADeg (mkA "fi" "fina" "fins" "fines" "finament") ; thin_A = mkA "fi" "fina" "fins" "fines" "finament" ;
train_N = regMN "tren" ; train_N = regMN "tren" ;
travel_V = verbV (envejar_48 "viatjar") ; travel_V = verbV (envejar_48 "viatjar") ;
tree_N = regMN "arbre" ; tree_N = regMN "arbre" ;
--- trousers_N = regN "pantalón" ; -- masc --- trousers_N = regN "pantalón" ; -- masc
ugly_A = compADeg (mkA "lleig" "lletja" "lletjos" "lletges" "lletjament") ; ugly_A = mkA "lleig" "lletja" "lletjos" "lletges" "lletjament" ;
understand_V2 = dirV2 (verbV (atendre_8 "entendre")) ; understand_V2 = dirV2 (verbV (atendre_8 "entendre")) ;
university_N = regFN "universitat" ; university_N = regFN "universitat" ;
village_N = regMN "poble" ; village_N = regMN "poble" ;
wait_V2 = mkV2 (mkV "esperar") dative ; wait_V2 = mkV2 (mkV "esperar") dative ;
walk_V = mkV "caminar" ; walk_V = mkV "caminar" ;
warm_A = compADeg (mkA "tebi" "tèbia" "tebis" "tèbies" "tèbiament") ; warm_A = mkA "tebi" "tèbia" "tebis" "tèbies" "tèbiament" ;
war_N = regFN "guerra" ; war_N = regFN "guerra" ;
watch_V2 = dirV2 (mkV "mirar") ; watch_V2 = dirV2 (mkV "mirar") ;
water_N = mkN "aigua" ; -- aigües water_N = mkN "aigua" ; -- aigües
white_A = compADeg (mkA "blanc" "blanca" "blancs" "blanques" "blancament") ; white_A = mkA "blanc" "blanca" "blancs" "blanques" "blancament" ;
window_N = regFN "finestra" ; window_N = regFN "finestra" ;
wine_N = regMN "vi" ; wine_N = regMN "vi" ;
win_V2 = dirV2 (mkV "guanyar") ; win_V2 = dirV2 (mkV "guanyar") ;
@@ -219,8 +219,8 @@ lin
wonder_VQ = mkVQ (reflV (mkV "preguntar")) ; wonder_VQ = mkVQ (reflV (mkV "preguntar")) ;
wood_N = regFN "fusta" ; wood_N = regFN "fusta" ;
write_V2 = dirV2 (verbV (escriure_50 "escriure" True)) ; write_V2 = dirV2 (verbV (escriure_50 "escriure" True)) ;
yellow_A = compADeg (mkA "groc" "groga" "grocs" "grogues" "grogament") ; yellow_A = mkA "groc" "groga" "grocs" "grogues" "grogament" ;
young_A = compADeg (mkA "jove" "jove" "joves" "joves" "jovement") ; young_A = mkA "jove" "jove" "joves" "joves" "jovement" ;
do_V2 = dirV2 (verbV (fer_56 "fer")) ; do_V2 = dirV2 (verbV (fer_56 "fer")) ;
now_Adv = mkAdv "ara" ; now_Adv = mkAdv "ara" ;
already_Adv = mkAdv "ja" ; already_Adv = mkAdv "ja" ;

View File

@@ -334,25 +334,28 @@ oper
makeNP x g n = {s = (pn2np (mk2PN x g)).s; a = agrP3 g n ; hasClit = False ; isPol = False ; isNeg = False} ** {lock_NP = <>} ; makeNP x g n = {s = (pn2np (mk2PN x g)).s; a = agrP3 g n ; hasClit = False ; isPol = False ; isNeg = False} ** {lock_NP = <>} ;
mk5A a b c d e = mk5A a b c d e = compADeg (mkAdj a b c d e) ;
compADeg {s = \\_ => (mkAdj a b c d e).s ; isPre = False ; copTyp = serCopula ; lock_A = <>} ; mk2A a b = compADeg (mkAdj2Reg a b) ;
mk2A a b = compADeg {s = \\_ => (mkAdj2Reg a b).s ; isPre = False ; copTyp = serCopula ; lock_A = <>} ; regA a = compADeg (mkAdjReg a) ;
regA a = compADeg {s = \\_ => (mkAdjReg a).s ; isPre = False ; copTyp = serCopula ; lock_A = <>} ;
prefA = overload { prefA = overload {
prefA : A -> A = \a -> a ** {isPre = True} ; prefA : A -> A = \a -> a ** {isPre = True} ;
prefA : Str -> Str -> A = \bo,bon -> prefA : Str -> Str -> A = \bo,bon ->
compADeg (lin A {s = \\_ => (adjBo bo bon).s ; isPre = True ; copTyp = serCopula}) ; let adj : A = compADeg (adjBo bo bon) ;
in adj ** {isPre = True} ;
} ; } ;
mkA2 a p = a ** {c2 = p ; lock_A2 = <>} ; mkA2 a p = a ** {c2 = p ; lock_A2 = <>} ;
mkADeg a b = mkADeg a b = a ** {
{s = table {Posit => a.s ! Posit ; _ => b.s ! Posit} ; compar = \\num => b.s ! AF Masc num ; -- millor, millors
isPre = a.isPre ; copTyp = serCopula ; lock_A = <>} ; isDeg = True } ;
compADeg a = compADeg a = lin A
{s = table {Posit => a.s ! Posit ; _ => \\f => "més" ++ a.s ! Posit ! f} ; {s = a.s ;
isPre = a.isPre ; copTyp = a.copTyp ; compar = \\_ => nonExist ;
lock_A = <>} ; isPre = False ; -- default values
copTyp = serCopula ;
isDeg = False
} ;
regADeg a = compADeg (regA a) ; regADeg a = compADeg (regA a) ;
mkAdv x = ss x ** {lock_Adv = <>} ; mkAdv x = ss x ** {lock_Adv = <>} ;
@@ -440,7 +443,7 @@ oper
special_ppV ve pa = { special_ppV ve pa = {
s = table { s = table {
VPart g n => (regA pa).s ! Posit ! genNum2Aform g n ; VPart g n => (regA pa).s ! genNum2Aform g n ;
p => ve.s ! p p => ve.s ! p
} ; } ;
lock_V = <> ; lock_V = <> ;
@@ -518,7 +521,7 @@ oper
mk2A : (lleig,lletja : Str) -> A ; mk2A : (lleig,lletja : Str) -> A ;
regA : Str -> A ; regA : Str -> A ;
mkADeg : A -> A -> A ; mkADeg : A -> A -> A ;
compADeg : A -> A ; compADeg : Adj -> A ;
regADeg : Str -> A ; regADeg : Str -> A ;
prefA : overload { prefA : overload {
prefA : A -> A ; -- gran prefA : A -> A ; -- gran