mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-23 01:52:50 -06:00
corrections in PhrasebookNor
This commit is contained in:
@@ -6,7 +6,7 @@ lincat
|
|||||||
lin
|
lin
|
||||||
GBye = ss "hade" ;
|
GBye = ss "hade" ;
|
||||||
GCheers = ss "skål" ; -- google translate !
|
GCheers = ss "skål" ; -- google translate !
|
||||||
-- GDamn = ss "fan" ; ?
|
GDamn = ss "faen" ;
|
||||||
GExcuse, GExcusePol = ss "unnskyld" ;
|
GExcuse, GExcusePol = ss "unnskyld" ;
|
||||||
GGoodDay = ss "god dag" ;
|
GGoodDay = ss "god dag" ;
|
||||||
GGoodEvening = ss "god kveld" ;
|
GGoodEvening = ss "god kveld" ;
|
||||||
|
|||||||
@@ -11,14 +11,14 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
Beer = mkCN L.beer_N ;
|
Beer = mkCN L.beer_N ;
|
||||||
Bread = mkCN L.bread_N ;
|
Bread = mkCN L.bread_N ;
|
||||||
Cheese = mkCN (mkN "ost" "osten" "oster" "ostene") ;
|
Cheese = mkCN (mkN "ost" "osten" "oster" "ostene") ;
|
||||||
Chicken = mkCN (mkN "kylling" "kyllingen" "kyllinger" "kyllinger") ;
|
Chicken = mkCN (mkN "kylling" "kyllingen" "kyllinger" "kyllingene") ;
|
||||||
Coffee = mkCN (mkN "kaffe" "kaffen" "kaffe" "kaffe") ; -- av kaffe ?
|
Coffee = mkCN (mkN "kaffe" "kaffen" "kaffe" "kaffe") ; -- av kaffe ?
|
||||||
Fish = mkCN L.fish_N ;
|
Fish = mkCN L.fish_N ;
|
||||||
Meat = mkCN (mkN "kjøtt" "kjøttet" "kjøtt" "kjøttet") ;
|
Meat = mkCN (mkN "kjøtt" "kjøttet" "kjøtt" "kjøtta") ;
|
||||||
Milk = mkCN L.milk_N ;
|
Milk = mkCN L.milk_N ;
|
||||||
Pizza = mkCN (mkN "pizza" "pizzaen" "pizzaer" "pizzaer") ; -- av pizza ?
|
Pizza = mkCN (mkN "pizza" "pizzaen" "pizzaer" "pizzaene") ; -- av pizza ?
|
||||||
Salt = mkCN L.salt_N ;
|
Salt = mkCN L.salt_N ;
|
||||||
Tea = mkCN (mkN "te" "teen" "te" "te") ; -- av te ?
|
Tea = mkCN (mkN "te" "teen" "teer" "teene") ; -- av te ?
|
||||||
Water = mkCN L.water_N ;
|
Water = mkCN L.water_N ;
|
||||||
Wine = mkCN L.wine_N ;
|
Wine = mkCN L.wine_N ;
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
Expensive = mkA "dyr" ;
|
Expensive = mkA "dyr" ;
|
||||||
Fresh = mkA "fersk" ;
|
Fresh = mkA "fersk" ;
|
||||||
Good = L.good_A ;
|
Good = L.good_A ;
|
||||||
Suspect = mkA "mistanke" ;
|
Suspect = mkA "suspekt" ;
|
||||||
Warm = L.warm_A ;
|
Warm = L.warm_A ;
|
||||||
|
|
||||||
-- places
|
-- places
|
||||||
@@ -40,14 +40,14 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
|
|
||||||
Airport = mkPlace (mkN "flyplass" "flyplassen" "flyplasser" "flyplassene") "på" "til";
|
Airport = mkPlace (mkN "flyplass" "flyplassen" "flyplasser" "flyplassene") "på" "til";
|
||||||
AmusementPark = mkPlace (mkN "fornøyelsespark" "fornøyelsesparken" "fornøyelsesparker" "fornøyelsesparkene") "i" "til";
|
AmusementPark = mkPlace (mkN "fornøyelsespark" "fornøyelsesparken" "fornøyelsesparker" "fornøyelsesparkene") "i" "til";
|
||||||
Bank = mkPlace (mkN "bank" "banken" "banke" "bankane") "i" "til";
|
Bank = mkPlace (mkN "bank" "banken" "banker" "bankene") "i" "til";
|
||||||
Bar = mkPlace (mkN "bar" "baren" "barer" "barene") "i" "til"; -- ?? check forms
|
Bar = mkPlace (mkN "bar" "baren" "barer" "barene") "i" "til"; -- ?? check forms
|
||||||
-- Cafeteria = mkPlace (mkN "cafeteria" "cafeteriet" "cafeterier" "cafeterierne") "i" "til"; -- check kafeteria / kantina
|
Cafeteria = mkPlace (mkN "kafeteria" "kafeterian" "kafeterier" "kafeteriene") "i" "til";
|
||||||
Center = mkPlace (mkN "senter" "sentrum" "sentre" "sentrene") "i" "til";
|
Center = mkPlace (mkN "sentrum" "sentrum" "sentre" "sentrene") "i" "til";
|
||||||
Cinema = mkPlace (mkN "kino" "kino" "kinoer" "kinoene") "på" "på";
|
Cinema = mkPlace (mkN "kino" "kino" "kinoer" "kinoene") "på" "på";
|
||||||
Church = mkPlace (mkN "kirke" "kirken" "kirker" "kirkene") "i" "til";
|
Church = mkPlace (mkN "kirke" "kirka" "kirker" "kirkene") "i" "til";
|
||||||
Disco = mkPlace (mkN "diskotek" "diskoteket" "diskoteker" "diskotekene") "i" "på";
|
Disco = mkPlace (mkN "diskotek" "diskoteket" "diskoteker" "diskotekene") "i" "på";
|
||||||
Hospital = mkPlace (mkN "sykehus" "sykehuset" "sykehus" "sykehusene") "på" "til";
|
Hospital = mkPlace (mkN "sykehus" "sykehuset" "sykehus" "sykehusa") "på" "til";
|
||||||
|
|
||||||
Hotel = mkPlace (mkN "hotel" "hotellet" "hoteller" "hotellene") "på" "til";
|
Hotel = mkPlace (mkN "hotel" "hotellet" "hoteller" "hotellene") "på" "til";
|
||||||
Museum = mkPlace (mkN "museum" "museet" "museer" "museene") "i" "til";
|
Museum = mkPlace (mkN "museum" "museet" "museer" "museene") "i" "til";
|
||||||
@@ -57,28 +57,28 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
PostOffice = mkPlace (mkN "postkontor" "postkontoret" "postkontorer" "postkontorene") "på" "til";
|
PostOffice = mkPlace (mkN "postkontor" "postkontoret" "postkontorer" "postkontorene") "på" "til";
|
||||||
Pub = mkPlace (mkN "pub" "puben" "puber" "pubene") "i" "til";
|
Pub = mkPlace (mkN "pub" "puben" "puber" "pubene") "i" "til";
|
||||||
Restaurant = mkPlace (mkN "restaurant" "restauranten" "restauranter" "restaurantene") "i" "til";
|
Restaurant = mkPlace (mkN "restaurant" "restauranten" "restauranter" "restaurantene") "i" "til";
|
||||||
School = mkPlace (mkN "skolen" "skolen" "skoler" "skolene") "i" "til";
|
School = mkPlace (mkN "skole" "skola" "skoler" "skolene") "i" "til";
|
||||||
Shop = mkPlace (mkN "butikk" "butikken" "butikker" "butikkene") "i" "til";
|
Shop = mkPlace (mkN "butikk" "butikken" "butikker" "butikkene") "i" "til";
|
||||||
Station = mkPlace (mkN "stasjon" "stasjonen" "stasjoner" "stasjonene") "i" "til";
|
Station = mkPlace (mkN "stasjon" "stasjonen" "stasjoner" "stasjonene") "i" "til";
|
||||||
Supermarket = mkPlace (mkN "supermarked" "supermarkedet" "supermarkeder" "supermarkedene") "i" "til";
|
Supermarket = mkPlace (mkN "supermarked" "supermarkedet" "supermarkeder" "supermarkedene") "i" "til";
|
||||||
Theatre = mkPlace (mkN "teater" "teatret" "teatre" "teatrene") "i" "på";
|
Theatre = mkPlace (mkN "teater" "teatret" "teatre" "teatrene") "i" "på";
|
||||||
Toilet = mkPlace (mkN "toalett" "toalettet" "toaletter" "toalettene") "på" "på";
|
Toilet = mkPlace (mkN "toalett" "toalettet" "toaletter" "toalettene") "på" "på";
|
||||||
University = mkPlace (mkN "universitet" "universitetet" "universitetys" "universitetene") "i" "til";
|
University = mkPlace (mkN "universitet" "universitetet" "universitet" "universiteta") "i" "til";
|
||||||
Zoo = mkPlace (mkN "dyrepark" "dyreparken" "dyreparker" "dyreparkene") "på" "til";
|
Zoo = mkPlace (mkN "dyrepark" "dyreparken" "dyreparker" "dyreparkene") "på" "til";
|
||||||
|
|
||||||
CitRestaurant cit = mkCNPlace (mkCN cit (mkN "restaurant" "restauranten" "restauranter" "restaurantene")) in_Prep to_Prep ;
|
CitRestaurant cit = mkCNPlace (mkCN cit (mkN "restaurant" "restauranten" "restauranter" "restaurantene")) in_Prep to_Prep ;
|
||||||
|
|
||||||
-- currencies
|
-- currencies
|
||||||
|
|
||||||
DanishCrown = mkCN (mkA "dansk") (mkN "krone" "kronen" "kroner" "kronene") | mkCN (mkN "krone" "kronen" "kroner" "kronene") ;
|
DanishCrown = mkCN (mkA "dansk") (mkN "krone" "krona" "kroner" "kronene") | mkCN (mkN "krone" "krona" "kroner" "kronene") ;
|
||||||
Dollar = mkCN (mkN "dollar" "dollaren" "dollar" "dollar") ; -- i dollar ?
|
Dollar = mkCN (mkN "dollar" "dollaren" "dollar" "dollar") ; -- i dollar ?
|
||||||
Euro = mkCN (mkN "euro" "euroen" "euro" "euro") ; -- i euro
|
Euro = mkCN (mkN "euro" "euroen" "euro" "euro") ; -- i euro
|
||||||
Lei = mkCN (mkN "leu" "leu" "leis" "leis") ; -- den leis ?
|
Lei = mkCN (mkN "leu" "leu" "leis" "leis") ; -- den leis ?
|
||||||
Leva = mkCN (mkN "lev" "lev" "leva" "leva") ; -- det leva ?
|
Leva = mkCN (mkN "lev" "lev" "leva" "leva") ; -- det leva ?
|
||||||
NorwegianCrown = mkCN (mkA "norsk") (mkN "krone" "kronen" "kroner" "kronene") | mkCN (mkN "krone" "kronen" "kroner" "kronene") ;
|
NorwegianCrown = mkCN (mkA "norsk") (mkN "krone" "krona" "kroner" "kronene") | mkCN (mkN "krone" "krona" "kroner" "kronene") ;
|
||||||
Pound = mkCN (mkN "pund" "pundet" "pounds" "pounds") ; -- i pounds ?
|
Pound = mkCN (mkN "pund" "pundet" "pund" "punda") ; -- i pounds ?
|
||||||
Rouble = mkCN (mkN "rubel" "rubelen" "rubler" "rubler") ; -- av rubler ?
|
Rouble = mkCN (mkN "rubel" "rubelen" "rubler" "rublene") ; -- av rubler ?
|
||||||
SwedishCrown = mkCN (mkA "svensk") (mkN "krone" "kronen" "kroner" "kronene") | mkCN (mkN "krone" "kronen" "kroner" "kronene") ;
|
SwedishCrown = mkCN (mkA "svensk") (mkN "krone" "krona" "kroner" "kronene") | mkCN (mkN "krone" "krona" "kroner" "kronene") ;
|
||||||
Zloty = mkCN (mkN "zloty" "zloty" "zloty" "zloty") ; -- i/den zloty ?
|
Zloty = mkCN (mkN "zloty" "zloty" "zloty" "zloty") ; -- i/den zloty ?
|
||||||
|
|
||||||
-- nationalities
|
-- nationalities
|
||||||
@@ -113,8 +113,8 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
Ferry = mkTransport (mkN "ferge" "fergen" "ferger" "fergene") ;
|
Ferry = mkTransport (mkN "ferge" "fergen" "ferger" "fergene") ;
|
||||||
Plane = mkTransport L.airplane_N ;
|
Plane = mkTransport L.airplane_N ;
|
||||||
Subway = mkTransport (mkN "undergrunnsbane" "undergrunnsbanen" "undergrunnsbaner" "undergrunnsbanene") ; -- check ?
|
Subway = mkTransport (mkN "undergrunnsbane" "undergrunnsbanen" "undergrunnsbaner" "undergrunnsbanene") ; -- check ?
|
||||||
Taxi = mkTransport (mkN "drosje" "drosjen" "drosjer" "drosjene") ;
|
Taxi = mkTransport (mkN "drosje" "drosja" "drosjer" "drosjene") ;
|
||||||
Train = mkTransport (mkN "tog" "toget" "tog" "togene") ;
|
Train = mkTransport (mkN "tog" "toget" "tog" "toga") ;
|
||||||
Tram = mkTransport (mkN "trikk" "trikken" "trikker" "trikkene") ;
|
Tram = mkTransport (mkN "trikk" "trikken" "trikker" "trikkene") ;
|
||||||
|
|
||||||
ByFoot = ParadigmsNor.mkAdv "til fots" ;
|
ByFoot = ParadigmsNor.mkAdv "til fots" ;
|
||||||
@@ -125,10 +125,10 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
-- actions
|
-- actions
|
||||||
|
|
||||||
AHasAge p num = mkCl p.name (mkNP num L.year_N) ;
|
AHasAge p num = mkCl p.name (mkNP num L.year_N) ;
|
||||||
AHasName p name = mkCl p.name (mkV2 (mkV "heter")) name ;
|
AHasName p name = mkCl p.name (mkV2 hete_V) name ;
|
||||||
AHasChildren p num = mkCl p.name have_V2 (mkNP num L.child_N) ;
|
AHasChildren p num = mkCl p.name have_V2 (mkNP num L.child_N) ;
|
||||||
AHasRoom p num = mkCl p.name have_V2
|
AHasRoom p num = mkCl p.name have_V2
|
||||||
(mkNP (mkNP a_Det (mkN "rom" "rommet" "rommene" "rommene"))
|
(mkNP (mkNP a_Det (mkN "rom" "rommet" "rommene" "romma"))
|
||||||
(SyntaxNor.mkAdv for_Prep (mkNP num (mkN "person" "personen" "personer" "personene")))) ;
|
(SyntaxNor.mkAdv for_Prep (mkNP num (mkN "person" "personen" "personer" "personene")))) ;
|
||||||
AHasTable p num = mkCl p.name have_V2
|
AHasTable p num = mkCl p.name have_V2
|
||||||
(mkNP (mkNP a_Det (mkN "tabel" "tabellen" "tabeller" "tabellene"))
|
(mkNP (mkNP a_Det (mkN "tabel" "tabellen" "tabeller" "tabellene"))
|
||||||
@@ -151,7 +151,7 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
|
|
||||||
-- miscellaneous
|
-- miscellaneous
|
||||||
|
|
||||||
QWhatName p = mkQS (mkQCl whatSg_IP p.name (mkV2 (mkV "heter"))) ;
|
QWhatName p = mkQS (mkQCl whatSg_IP p.name (mkV2 hete_V)) ;
|
||||||
QWhatAge p = mkQS (mkQCl (ICompAP (mkAP L.old_A)) p.name) ;
|
QWhatAge p = mkQS (mkQCl (ICompAP (mkAP L.old_A)) p.name) ;
|
||||||
HowMuchCost item = mkQS (mkQCl how8much_IAdv (mkCl item (mkV "koste"))) ;
|
HowMuchCost item = mkQS (mkQCl how8much_IAdv (mkCl item (mkV "koste"))) ;
|
||||||
ItCost item price = mkCl item (mkV2 (mkV "koste")) price ;
|
ItCost item price = mkCl item (mkV2 (mkV "koste")) price ;
|
||||||
@@ -166,17 +166,17 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
-- Building phrases from strings is complicated: the solution is to use
|
-- Building phrases from strings is complicated: the solution is to use
|
||||||
-- mkText : Text -> Text -> Text ;
|
-- mkText : Text -> Text -> Text ;
|
||||||
|
|
||||||
PSeeYouDate d = mkText (lin Text (ss ("se deg"))) (mkPhrase (mkUtt d)) ;
|
PSeeYouDate d = mkText (lin Text (ss ("vi ses"))) (mkPhrase (mkUtt d)) ;
|
||||||
PSeeYouPlace p = mkText (lin Text (ss ("se deg"))) (mkPhrase (mkUtt p.at)) ;
|
PSeeYouPlace p = mkText (lin Text (ss ("vi ses"))) (mkPhrase (mkUtt p.at)) ;
|
||||||
PSeeYouPlaceDate p d =
|
PSeeYouPlaceDate p d =
|
||||||
mkText (lin Text (ss ("se deg")))
|
mkText (lin Text (ss ("vi ses")))
|
||||||
(mkText (mkPhrase (mkUtt p.at)) (mkPhrase (mkUtt d))) ;
|
(mkText (mkPhrase (mkUtt p.at)) (mkPhrase (mkUtt d))) ;
|
||||||
|
|
||||||
-- Relations are expressed as "my wife" or "my son's wife", as defined by $xOf$
|
-- Relations are expressed as "my wife" or "my son's wife", as defined by $xOf$
|
||||||
-- below. Languages without productive genitives must use an equivalent of
|
-- below. Languages without productive genitives must use an equivalent of
|
||||||
-- "the wife of my son" for non-pronouns.
|
-- "the wife of my son" for non-pronouns.
|
||||||
|
|
||||||
Wife = xOf sing (mkN "kone" "konen" "koner" "konene") ;
|
Wife = xOf sing (mkN "kone" "kona" "koner" "konene") ;
|
||||||
Husband = xOf sing L.man_N ;
|
Husband = xOf sing L.man_N ;
|
||||||
Son = xOf sing (mkN "sønn" "sønnen" "sønner" "sønnene") ;
|
Son = xOf sing (mkN "sønn" "sønnen" "sønner" "sønnene") ;
|
||||||
Daughter = xOf sing (mkN "datter" "datteren" "døtre" "døtrene") ;
|
Daughter = xOf sing (mkN "datter" "datteren" "døtre" "døtrene") ;
|
||||||
@@ -211,11 +211,16 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
|
|
||||||
-- transports
|
-- transports
|
||||||
|
|
||||||
HowFar place = mkQS (mkQCl far_IAdv place.name) ;
|
HowFar place =
|
||||||
HowFarFrom x y = mkQS (mkQCl far_IAdv (mkNP y.name (SyntaxNor.mkAdv from_Prep x.name))) ;
|
mkQS (mkQCl far_IAdv (mkCl (mkVP place.to))) ;
|
||||||
HowFarFromBy x y t =
|
HowFarFrom place x =
|
||||||
mkQS (mkQCl far_IAdv (mkNP (mkNP y.name (SyntaxNor.mkAdv from_Prep x.name)) t)) ;
|
mkQS (mkQCl far_IAdv (mkCl (mkVP (mkVP place.to)
|
||||||
HowFarBy y t = mkQS (mkQCl far_IAdv (mkNP y.name t)) ;
|
(SyntaxNor.mkAdv from_Prep x.name)))) ;
|
||||||
|
HowFarFromBy place x t =
|
||||||
|
mkQS (mkQCl far_IAdv (mkCl (mkVP (mkVP (mkVP place.to)
|
||||||
|
(SyntaxNor.mkAdv from_Prep x.name)) t))) ;
|
||||||
|
HowFarBy place t =
|
||||||
|
mkQS (mkQCl far_IAdv (mkCl (mkVP (mkVP place.to) t))) ;
|
||||||
|
|
||||||
WhichTranspPlace trans place =
|
WhichTranspPlace trans place =
|
||||||
mkQS (mkQCl (mkIP which_IDet trans.name) (mkVP (mkVP L.go_V) place.to)) ;
|
mkQS (mkQCl (mkIP which_IDet trans.name) (mkVP (mkVP L.go_V) place.to)) ;
|
||||||
@@ -226,7 +231,7 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
|
|
||||||
oper
|
oper
|
||||||
mkNat : Str -> Str -> NPNationality = \nat,co ->
|
mkNat : Str -> Str -> NPNationality = \nat,co ->
|
||||||
mkNPNationality (mkNP (mkPN (nat + "a"))) (mkNP (mkPN co)) (mkA nat) ;
|
mkNPNationality (mkNP (mkPN nat)) (mkNP (mkPN co)) (mkA nat) ;
|
||||||
|
|
||||||
mkDay : Str -> {name : NP ; point : Adv ; habitual : Adv} = \d ->
|
mkDay : Str -> {name : NP ; point : Adv ; habitual : Adv} = \d ->
|
||||||
let day = mkNP (mkPN d) in
|
let day = mkNP (mkPN d) in
|
||||||
@@ -240,7 +245,7 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
closed_A = mkA "stengt" "stengt";
|
closed_A = mkA "stengt" "stengt";
|
||||||
|
|
||||||
xOf : GNumber -> N -> NPPerson -> NPPerson = \n,x,p ->
|
xOf : GNumber -> N -> NPPerson -> NPPerson = \n,x,p ->
|
||||||
relativePerson n (mkCN x) (\a,b,c -> mkNP (GenNP b) a c) p ;
|
relativePersonNor n (mkCN x) (\a,b,c -> mkNP (GenNP b) a c) p ;
|
||||||
|
|
||||||
mkSuperl : A -> Det = \a -> mkDet the_Art (mkOrd a) ;
|
mkSuperl : A -> Det = \a -> mkDet the_Art (mkOrd a) ;
|
||||||
|
|
||||||
@@ -249,6 +254,19 @@ concrete WordsNor of Words = SentencesNor **
|
|||||||
by = SyntaxNor.mkAdv by8means_Prep (mkNP n)
|
by = SyntaxNor.mkAdv by8means_Prep (mkNP n)
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
far_IAdv = ExtraNor.IAdvAdv L.far_Adv ;
|
far_IAdv = ExtraNor.IAdvAdv (ParadigmsNor.mkAdv "langt") ;
|
||||||
how8much_IAdv : IAdv = ss "hvor" ** {lock_IAdv = <>};
|
|
||||||
|
how8much_IAdv : IAdv = ss "hvor mye" ** {lock_IAdv = <>};
|
||||||
|
|
||||||
|
relativePersonNor : GNumber -> CN -> (Num -> NP -> CN -> NP) -> NPPerson -> NPPerson =
|
||||||
|
\n,x,f,p ->
|
||||||
|
let num = if_then_else Num n plNum sgNum in {
|
||||||
|
name = case p.isPron of {
|
||||||
|
True => PossNP (mkNP the_Quant num x) p.name ;
|
||||||
|
_ => f num p.name x
|
||||||
|
} ;
|
||||||
|
isPron = False ;
|
||||||
|
poss = mkQuant he_Pron -- not used because not pron
|
||||||
|
} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user