summaryrefslogtreecommitdiff
path: root/examples/phrasebook/WordsFin.gf
diff options
context:
space:
mode:
authoraarne <aarne@chalmers.se>2010-04-07 19:39:48 +0000
committeraarne <aarne@chalmers.se>2010-04-07 19:39:48 +0000
commit8171bb0ea2dffe9e0a99e06815bf46182671137d (patch)
tree10116fbbf6f48e005c7961c6bb5439f7fa3e3d18 /examples/phrasebook/WordsFin.gf
parentaeb0a5b7e073bec56365185beed3311cf65c65aa (diff)
reordered phrasebook sources so that they are easier to clone; cloned Ger,Spa,Cat,Bul
Diffstat (limited to 'examples/phrasebook/WordsFin.gf')
-rw-r--r--examples/phrasebook/WordsFin.gf121
1 files changed, 75 insertions, 46 deletions
diff --git a/examples/phrasebook/WordsFin.gf b/examples/phrasebook/WordsFin.gf
index f37b9b45b..056874443 100644
--- a/examples/phrasebook/WordsFin.gf
+++ b/examples/phrasebook/WordsFin.gf
@@ -2,80 +2,97 @@
concrete WordsFin of Words = SentencesFin **
open
- SyntaxFin, ParadigmsFin, (L = LangFin),
+ SyntaxFin, ParadigmsFin, (L = LexiconFin),
Prelude, (E = ExtraFin) in {
+
lin
- Wine = mkCN (mkN "viini") ;
- Beer = mkCN (mkN "olut" "oluita") ;
- Water = mkCN (mkN "vesi" "veden" "vesiä") ;
+
+-- kinds
+
+ Apple = mkCN L.apple_N ;
+ Beer = mkCN L.beer_N ;
+ Bread = mkCN L.bread_N ;
+ Cheese = mkCN (mkN "juusto") ;
+ Chicken = mkCN (mkN "kana") ;
Coffee = mkCN (mkN "kahvi") ;
+ Fish = mkCN L.fish_N ;
+ Meat = mkCN (mkN "liha") ;
+ Milk = mkCN L.milk_N ;
+ Pizza = mkCN (mkN "pizza") ;
+ Salt = mkCN L.salt_N ;
Tea = mkCN (mkN "tee") ;
+ Water = mkCN L.water_N ;
+ Wine = mkCN L.wine_N ;
- Pizza = mkCN (mkN "pizza") ;
- Cheese = mkCN (mkN "juusto") ;
- Fish = mkCN (mkN "kala") ;
+-- qualities
- Fresh = mkA "tuore" ;
- Warm = mkA
- (mkN "lämmin" "lämpimän" "lämmintä" "lämpimänä" "lämpimään"
- "lämpiminä" "lämpimiä" "lämpimien" "lämpimissä" "lämpimiin"
- )
- "lämpimämpi" "lämpimin" ;
- Expensive = mkA "kallis" ;
- Delicious = mkA "herkullinen" ;
+ Bad = L.bad_A ;
Boring = mkA "tylsä" ;
- Good = mkA (mkN "hyvä") "parempi" "paras" ; ---- comparisons?
-
- Restaurant = mkPlace (mkN "ravintola") False ;
- Bar = mkPlace (mkN "baari") False ;
- Toilet = mkPlace (mkN "vessa") False ;
- Museum = mkPlace (mkN "museo") False ;
- Airport = mkPlace (mkN "lento" (mkN "kenttä")) True ;
- Station = mkPlace (mkN "asema") True ;
- Hospital = mkPlace (mkN "sairaala") False ;
- Church = mkPlace (mkN "kirkko") False ;
+ Cheap = mkA "halpa" ;
+ Cold = L.cold_A ;
+ Delicious = mkA "herkullinen" ;
+ Expensive = mkA "kallis" ;
+ Fresh = mkA "tuore" ;
+ Good = L.good_A ;
+ Suspect = mkA "epäilyttävä" ;
+ Warm = L.warm_A ;
+
+-- places
+
+ Restaurant = mkPlace (mkN "ravintola") ssa ;
+ Bar = mkPlace (mkN "baari") ssa ;
+ Toilet = mkPlace (mkN "vessa") ssa ;
+ Museum = mkPlace (mkN "museo") ssa ;
+ Airport = mkPlace (mkN "lento" (mkN "kenttä")) lla ;
+ Station = mkPlace (mkN "asema") lla ;
+ Hospital = mkPlace (mkN "sairaala") ssa ;
+ Church = mkPlace (mkN "kirkko") ssa ;
+ Shop = mkPlace (mkN "kauppa") ssa ;
+ Park = mkPlace (mkN "puisto") ssa ;
+ Hotel = mkPlace (mkN "hotelli") ssa ;
+ University = mkPlace (mkN "yliopisto") lla ;
+ School = mkPlace (mkN "koulu") lla ;
+
+-- currencies
- Euro = mkCN (mkN "euro") ;
Dollar = mkCN (mkN "dollari") ;
+ Euro = mkCN (mkN "euro") ;
Lei = mkCN (mkN "lei") ;
- ---- it would be nice to have a capitalization Predef function
+-- nationalities
+
+ Belgian = mkA "belgialainen" ;
+ Belgium = mkNP (mkPN "Belgia") ;
English = mkNat (mkPN "englanti") (mkPN "Englanti") (mkA "englantilainen") ;
Finnish =
mkNat (mkPN (mkN "suomi" "suomia")) (mkPN (mkN "Suomi" "Suomia"))
(mkA "suomalainen") ;
+ Flemish = mkNP (mkPN "flaami") ;
French = mkNat (mkPN "ranska") (mkPN "Ranska") (mkA "ranskalainen") ;
Italian = mkNat (mkPN "italia") (mkPN "Italia") (mkA "italialainen") ;
Romanian = mkNat (mkPN "romania") (mkPN "Romania") (mkA "romanialainen") ;
Swedish = mkNat (mkPN "ruotsi") (mkPN "Ruotsi") (mkA "ruotsalainen") ;
- Belgian = mkA "belgialainen" ;
- Flemish = mkNP (mkPN "flaami") ;
- Belgium = mkNP (mkPN "Belgia") ;
+ ---- it would be nice to have a capitalization Predef function
- Monday = let d = "maanantai" in mkDay (mkPN d) (d + "sin") ;
- Tuesday = let d = "tiistai" in mkDay (mkPN d) (d + "sin") ;
- Wednesday = let d = "keskiviikko" in mkDay (mkPN d) (d + "isin") ;
- Thursday = let d = "torstai" in mkDay (mkPN d) (d + "sin") ;
- Friday = let d = "perjantai" in mkDay (mkPN d) (d + "sin") ;
- Saturday = let d = "lauantai" in mkDay (mkPN d) (d + "sin") ;
- Sunday = let d = "sunnuntai" in mkDay (mkPN d) (d + "sin") ;
+-- actions
- AWant p obj = mkCl p.name (mkV2 "haluta") obj ;
+ AHasName p name = mkCl (nameOf p) name ;
+ AHungry p = mkCl p.name have_V2 (mkNP (mkN "nälkä")) ;
+ AIll p = mkCl p.name (mkA "sairas") ;
+ AKnow p = mkCl p.name (mkV "tietää") ;
ALike p item = mkCl p.name L.like_V2 item ;
- ASpeak p lang = mkCl p.name (mkV2 (mkV "puhua") partitive) lang ;
+ ALive p co = mkCl p.name (mkVP (mkVP (mkV "asua")) (SyntaxFin.mkAdv in_Prep co)) ;
ALove p q = mkCl p.name (mkV2 (mkV "rakastaa") partitive) q.name ;
- AHungry p = mkCl p.name have_V2 (mkNP (mkN "nälkä")) ;
+ AScared p = mkCl p.name (caseV partitive (mkV "pelottaa")) ;
+ ASpeak p lang = mkCl p.name (mkV2 (mkV "puhua") partitive) lang ;
AThirsty p = mkCl p.name have_V2 (mkNP (mkN "jano")) ;
ATired p = mkCl p.name (caseV partitive (mkV "väsyttää")) ;
- AScared p = mkCl p.name (caseV partitive (mkV "pelottaa")) ;
- AIll p = mkCl p.name (mkA "sairas") ;
AUnderstand p = mkCl p.name (mkV "ymmärtää") ;
- AKnow p = mkCl p.name (mkV "tietää") ;
+ AWant p obj = mkCl p.name (mkV2 "haluta") obj ;
AWantGo p place = mkCl p.name want_VV (mkVP (mkVP L.go_V) place.to) ;
- AHasName p name = mkCl (nameOf p) name ;
- ALive p co =
- mkCl p.name (mkVP (mkVP (mkV "asua")) (SyntaxFin.mkAdv in_Prep co)) ;
+
+-- miscellaneous
QWhatName p = mkQS (mkQCl whatSg_IP (mkVP (nameOf p))) ;
@@ -89,6 +106,16 @@ concrete WordsFin of Words = SentencesFin **
HowMuchCost item = mkQS (mkQCl how8much_IAdv (mkCl item (mkV "maksaa"))) ;
ItCost item price = mkCl item (mkV2 (mkV "maksaa")) price ;
+-- week days
+
+ Monday = let d = "maanantai" in mkDay (mkPN d) (d + "sin") ;
+ Tuesday = let d = "tiistai" in mkDay (mkPN d) (d + "sin") ;
+ Wednesday = let d = "keskiviikko" in mkDay (mkPN d) (d + "isin") ;
+ Thursday = let d = "torstai" in mkDay (mkPN d) (d + "sin") ;
+ Friday = let d = "perjantai" in mkDay (mkPN d) (d + "sin") ;
+ Saturday = let d = "lauantai" in mkDay (mkPN d) (d + "sin") ;
+ Sunday = let d = "sunnuntai" in mkDay (mkPN d) (d + "sin") ;
+
oper
mkNat : PN -> PN -> A ->
{lang : NP ; prop : A ; country : NP} = \nat,co,pro ->
@@ -110,6 +137,8 @@ concrete WordsFin of Words = SentencesFin **
at = casePrep (if_then_else Case e adessive inessive) ; -- True: external
to = casePrep (if_then_else Case e allative illative) ;
} ;
+ ssa = False ;
+ lla = True ;
open_Adv = ParadigmsFin.mkAdv "avoinna" ;
closed_Adv = ParadigmsFin.mkAdv "kiinni" ;