mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 03:32:51 -06:00
q
This commit is contained in:
@@ -45,14 +45,24 @@ lin
|
|||||||
IMale = {name = mkNP i_Pron ; isPron = True ; poss = mkQuant i_Pron} ;
|
IMale = {name = mkNP i_Pron ; isPron = True ; poss = mkQuant i_Pron} ;
|
||||||
YouFamMale = {name = mkNP youSg_Pron ; isPron = True ; poss = mkQuant youSg_Pron} ;
|
YouFamMale = {name = mkNP youSg_Pron ; isPron = True ; poss = mkQuant youSg_Pron} ;
|
||||||
YouPolMale = {name = mkNP youPol_Pron ; isPron = True ; poss = mkQuant youPol_Pron} ;
|
YouPolMale = {name = mkNP youPol_Pron ; isPron = True ; poss = mkQuant youPol_Pron} ;
|
||||||
ThePlace kind = let name : NP = mkNP the_Quant kind.name in {
|
ThePlace kind = let name : NP = mkNP the_Quant kind.name ;
|
||||||
|
condAt : Bool = needIndefPlace kind.name kind.at ;
|
||||||
|
condTo : Bool = needIndefPlace kind.name kind.to in {
|
||||||
name = name ;
|
name = name ;
|
||||||
at = if_then_else Adv kind.at.needIndef (mkAdv kind.at name) (mkAdv kind.at (mkNP kind.name));
|
at = if_then_else Adv condAt (mkAdv kind.at (mkNP the_Art kind.name)) (mkAdv kind.at name);
|
||||||
to = if_then_else Adv kind.at.needIndef (mkAdv kind.to name) (mkAdv kind.at (mkNP kind.name))
|
to = if_then_else Adv condTo (mkAdv kind.at (mkNP the_Art kind.name)) (mkAdv kind.to name)
|
||||||
} ;
|
} ;
|
||||||
CitiNat n = {pers = n.propPers; prop = n.propObj} ;
|
CitiNat n = {pers = n.propPers; prop = n.propObj} ;
|
||||||
ACitizen p n = mkCl p.name (PR.mkAdv (n.pers ! (p.name.a.g) ! (p.name.a.n))) ;
|
ACitizen p n = mkCl p.name (PR.mkAdv (n.pers ! (p.name.a.g) ! (p.name.a.n))) ;
|
||||||
PCitizenship x = mkPhrase (mkUtt (mkAP x.prop)) ;
|
PCitizenship x = mkPhrase (mkUtt (mkAP x.prop)) ;
|
||||||
PropCit p = p.prop ;
|
PropCit p = p.prop ;
|
||||||
|
|
||||||
|
|
||||||
|
oper needIndefPlace : CN -> Prep -> Bool = \cn,prep ->
|
||||||
|
case <cn.isComp,prep.needIndef> of
|
||||||
|
{<True,_> => True ;
|
||||||
|
<False,True> => False ;
|
||||||
|
_ => True
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -47,18 +47,18 @@ concrete WordsRon of Words = SentencesRon ** open
|
|||||||
-- places
|
-- places
|
||||||
|
|
||||||
Airport = mkPlace (P.mkNR "aeroport") at_Prep ;
|
Airport = mkPlace (P.mkNR "aeroport") at_Prep ;
|
||||||
AmusementPark = mkPlace (P.compN (P.mkNR "parc") ["de distracții"]) in_Prep ;
|
AmusementPark = mkCNPlace (mkCN (mkCN (P.mkNR "parc")) (mkAdv by8means_Prep (mkNP (P.mkPN "distracții")))) in_Prep to_Prep;
|
||||||
Bank = mkPlace (P.mkN "bancă" "bănci") in_Prep ;
|
Bank = mkPlace (P.mkN "bancă" "bănci") at_Prep ;
|
||||||
Bar = mkPlace (P.mkNR "bar") at_Prep ;
|
Bar = mkPlace (P.mkNR "bar") at_Prep ;
|
||||||
Cafeteria = mkPlace (P.mkN "cantină" "cantine") in_Prep ;
|
Cafeteria = mkPlace (P.mkN "cantină" "cantine") in_Prep ;
|
||||||
Center = mkPlace (P.mkN "centru" "centre" ) in_Prep ;
|
Center = mkCNPlace (mkCN (P.mkN "centru" "centre" )) in_Prep in_Prep;
|
||||||
Church = mkPlace (P.mkN "biserică" "biserici") at_Prep ;
|
Church = mkPlace (P.mkN "biserică" "biserici") at_Prep ;
|
||||||
Cinema = mkPlace (P.mkNR "cinematograf") at_Prep ;
|
Cinema = mkPlace (P.mkNR "cinematograf") at_Prep ;
|
||||||
Disco = mkPlace (P.mkN "discotecă" "discoteci" ) at_Prep ;
|
Disco = mkPlace (P.mkN "discotecă" "discoteci" ) at_Prep ;
|
||||||
Hospital = mkPlace (P.mkN "spital") at_Prep ;
|
Hospital = mkPlace (P.mkN "spital") at_Prep ;
|
||||||
Hotel = mkPlace (P.mkNR "hotel") at_Prep ;
|
Hotel = mkPlace (P.mkNR "hotel") at_Prep ;
|
||||||
Museum = mkPlace (P.mkN "muzeu" "muzee") at_Prep ;
|
Museum = mkPlace (P.mkN "muzeu" "muzee") at_Prep ;
|
||||||
Park = mkPlace (P.mkNR "parc") at_Prep ;
|
Park = mkPlace (P.mkNR "parc") in_Prep ;
|
||||||
Parking = mkPlace (P.mkN "parcare" "parcări") in_Prep ;
|
Parking = mkPlace (P.mkN "parcare" "parcări") in_Prep ;
|
||||||
Pharmacy = mkPlace (P.mkN "farmacie" "farmacii" P.feminine) at_Prep;
|
Pharmacy = mkPlace (P.mkN "farmacie" "farmacii" P.feminine) at_Prep;
|
||||||
PostOffice = mkPlace (P.mkN "poștă" "poște") at_Prep ;
|
PostOffice = mkPlace (P.mkN "poștă" "poște") at_Prep ;
|
||||||
@@ -194,8 +194,8 @@ concrete WordsRon of Words = SentencesRon ** open
|
|||||||
Wife = xOf sing (P.mkN "soţie") ;
|
Wife = xOf sing (P.mkN "soţie") ;
|
||||||
Husband = xOf sing (P.mkN "soţ" "soţi") ;
|
Husband = xOf sing (P.mkN "soţ" "soţi") ;
|
||||||
Son = xOf sing (P.mkN "fiu" "fii") ;
|
Son = xOf sing (P.mkN "fiu" "fii") ;
|
||||||
Daughter = xOf sing (P.mkN "fiică" "fiice") ;
|
Daughter = xOf sing (P.mkN "fiică" "fiice") ;
|
||||||
Children = xOf plur L.child_N ;
|
Children = xOf plur L.child_N ;
|
||||||
|
|
||||||
-- week days
|
-- week days
|
||||||
|
|
||||||
@@ -232,16 +232,16 @@ open_A : A = P.mkA "deschis" ;
|
|||||||
-- auxiliaries
|
-- auxiliaries
|
||||||
|
|
||||||
mkSimpSimpNat : Str -> Str -> NPNationalityRon = \nat, co ->
|
mkSimpSimpNat : Str -> Str -> NPNationalityRon = \nat, co ->
|
||||||
mkSimpNat nat co nat (nat + "ă") (nat + "i") (nat+"e");
|
mkSimpNat nat co nat (nat + "a") (nat + "i") (nat+"e");
|
||||||
|
|
||||||
mkSimpNat : Str -> Str -> Str -> Str -> Str -> Str -> NPNationalityRon = \nat,co, citMS, citFS, citMP, citFP -> let adj = P.mkA nat in
|
mkSimpNat : Str -> Str -> Str -> Str -> Str -> Str -> NPNationalityRon = \nat,co, citMS, citFS, citMP, citFP -> let adj = P.mkA nat in
|
||||||
mkNPNationalityRon (mkNP (P.mkPN (nat+"ă"))) (mkNP (P.mkPN co)) adj citMS citFS citMP citFP ;
|
mkNPNationalityRon (mkNP (P.mkPN (nat+"a"))) (mkNP (P.mkPN co)) adj citMS citFS citMP citFP ;
|
||||||
|
|
||||||
mkNat : Str -> Str -> Str -> Str -> Str -> Str -> NPNationalityRon = \nat,co, citMS, citFS, citMP, citFP -> let adj = P.mkA (nat+"esc") in
|
mkNat : Str -> Str -> Str -> Str -> Str -> Str -> NPNationalityRon = \nat,co, citMS, citFS, citMP, citFP -> let adj = P.mkA (nat+"esc") in
|
||||||
mkNPNationalityRon (mkNP (P.mkPN (nat+"ă"))) (mkNP (P.mkPN co)) adj citMS citFS citMP citFP ;
|
mkNPNationalityRon (mkNP (P.mkPN (nat+"a"))) (mkNP (P.mkPN co)) adj citMS citFS citMP citFP ;
|
||||||
|
|
||||||
mkCompNat : Str -> Str -> Str -> Str -> Str -> Str -> Str -> NPNationalityRon = \nat,co, adj, citMS, citFS, citMP, citFP -> let a = P.mkA adj in
|
mkCompNat : Str -> Str -> Str -> Str -> Str -> Str -> Str -> NPNationalityRon = \nat,co, adj, citMS, citFS, citMP, citFP -> let a = P.mkA adj in
|
||||||
mkNPNationalityRon (mkNP (P.mkPN (nat+"ă"))) (mkNP (P.mkPN co)) a citMS citFS citMP citFP ;
|
mkNPNationalityRon (mkNP (P.mkPN (nat+"a"))) (mkNP (P.mkPN co)) a citMS citFS citMP citFP ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user