summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-08-16 18:55:28 +0000
committeraarne <aarne@cs.chalmers.se>2008-08-16 18:55:28 +0000
commit66c927937ad8ba4055a30c87c4455186535804dd (patch)
treec0008ba3a3fe2e1f494e7b4b0570a459f593c67b /examples
parentddbeff3028452751e4e840331d4ec425d83d552c (diff)
bronzeage grammar restored except for three ones with issues ; arabic transliteration added
Diffstat (limited to 'examples')
-rw-r--r--examples/bronzeage/Bronzeage.gf38
-rw-r--r--examples/bronzeage/BronzeageDan.gf7
-rw-r--r--examples/bronzeage/BronzeageEng.gf7
-rw-r--r--examples/bronzeage/BronzeageFin.gf8
-rw-r--r--examples/bronzeage/BronzeageGer.gf8
-rw-r--r--examples/bronzeage/BronzeageI.gf59
-rw-r--r--examples/bronzeage/BronzeageNor.gf6
-rw-r--r--examples/bronzeage/BronzeageRus.gf7
-rw-r--r--examples/bronzeage/BronzeageSpa.gf7
-rw-r--r--examples/bronzeage/BronzeageSwe.gf8
-rw-r--r--examples/bronzeage/Swadesh.gf245
-rw-r--r--examples/bronzeage/SwadeshAra.gf5
-rw-r--r--examples/bronzeage/SwadeshDan.gf5
-rw-r--r--examples/bronzeage/SwadeshEng.gf5
-rw-r--r--examples/bronzeage/SwadeshFin.gf5
-rw-r--r--examples/bronzeage/SwadeshFre.gf5
-rw-r--r--examples/bronzeage/SwadeshGer.gf5
-rw-r--r--examples/bronzeage/SwadeshI.gf226
-rw-r--r--examples/bronzeage/SwadeshIta.gf5
-rw-r--r--examples/bronzeage/SwadeshNor.gf5
-rw-r--r--examples/bronzeage/SwadeshRus.gf5
-rw-r--r--examples/bronzeage/SwadeshSpa.gf5
-rw-r--r--examples/bronzeage/SwadeshSwe.gf5
23 files changed, 681 insertions, 0 deletions
diff --git a/examples/bronzeage/Bronzeage.gf b/examples/bronzeage/Bronzeage.gf
new file mode 100644
index 000000000..c918c3241
--- /dev/null
+++ b/examples/bronzeage/Bronzeage.gf
@@ -0,0 +1,38 @@
+abstract Bronzeage = Cat, Swadesh ** {
+
+ flags startcat = Phr ;
+
+ cat
+ Sent ; MassCN ;
+
+ fun
+ PhrPos : Sent -> Phr ;
+ PhrNeg : Sent -> Phr ;
+ PhrQuest : Sent -> Phr ;
+ PhrImp : Imp -> Phr ;
+ PhrImpNeg : Imp -> Phr ;
+
+ SentV : V -> NP -> Sent ;
+ SentV2 : V2 -> NP -> NP -> Sent ;
+ SentV2Mass : V2 -> NP -> MassCN -> Sent ;
+ SentV3 : V3 -> NP -> NP -> NP -> Sent ;
+ SentA : A -> NP -> Sent ;
+ SentNP : NP -> NP -> Sent ;
+
+ SentAdvV : V -> NP -> Adv -> Sent ;
+ SentAdvV2 : V2 -> NP -> NP -> Adv -> Sent ;
+
+ ImpV : V -> Imp ;
+ ImpV2 : V2 -> NP -> Imp ;
+
+ UsePron : Pron -> NP ;
+ DetCN : Det -> CN -> NP ;
+ NumCN : Card -> CN -> NP ;
+
+ UseN : N -> CN ;
+ ModCN : A -> CN -> CN ;
+
+ UseMassN : MassN -> MassCN ;
+ ModMass : A -> MassCN -> MassCN ;
+
+}
diff --git a/examples/bronzeage/BronzeageDan.gf b/examples/bronzeage/BronzeageDan.gf
new file mode 100644
index 000000000..e8328e721
--- /dev/null
+++ b/examples/bronzeage/BronzeageDan.gf
@@ -0,0 +1,7 @@
+--# -path=.:present:prelude
+
+concrete BronzeageDan of Bronzeage = CatDan, SwadeshDan ** BronzeageI with
+ (Lang = LangDan) ** {
+ flags language = da_DK;
+}
+
diff --git a/examples/bronzeage/BronzeageEng.gf b/examples/bronzeage/BronzeageEng.gf
new file mode 100644
index 000000000..04ff53a3c
--- /dev/null
+++ b/examples/bronzeage/BronzeageEng.gf
@@ -0,0 +1,7 @@
+--# -path=.:present:prelude
+
+concrete BronzeageEng of Bronzeage = CatEng, SwadeshEng ** BronzeageI with
+ (Lang = LangEng) ** {
+ flags language = en_US;
+}
+
diff --git a/examples/bronzeage/BronzeageFin.gf b/examples/bronzeage/BronzeageFin.gf
new file mode 100644
index 000000000..cc5940d4e
--- /dev/null
+++ b/examples/bronzeage/BronzeageFin.gf
@@ -0,0 +1,8 @@
+--# -path=.:present:prelude
+
+concrete BronzeageFin of Bronzeage = CatFin, SwadeshFin ** BronzeageI with
+ (Lang = LangFin) ** {
+ flags language = fi_FI;
+}
+
+
diff --git a/examples/bronzeage/BronzeageGer.gf b/examples/bronzeage/BronzeageGer.gf
new file mode 100644
index 000000000..dec77d187
--- /dev/null
+++ b/examples/bronzeage/BronzeageGer.gf
@@ -0,0 +1,8 @@
+--# -path=.:present:prelude
+
+concrete BronzeageGer of Bronzeage = CatGer, SwadeshGer ** BronzeageI with
+ (Lang = LangGer) ** {
+ flags language = de_DE;
+}
+
+
diff --git a/examples/bronzeage/BronzeageI.gf b/examples/bronzeage/BronzeageI.gf
new file mode 100644
index 000000000..8e4d7abee
--- /dev/null
+++ b/examples/bronzeage/BronzeageI.gf
@@ -0,0 +1,59 @@
+incomplete concrete BronzeageI of Bronzeage = open Lang in {
+
+ flags
+ optimize = all_subs ; --optimize = share_subs ;
+ unlexer = text ; lexer = text ;
+
+ lincat
+ Sent = {s : SForm => Str} ; MassCN = CN ;
+
+ lin
+ PhrPos sent = {s = sent.s ! SPos ++ "."} ;
+ PhrNeg sent = {s = sent.s ! SNeg ++ "."} ;
+ PhrQuest sent = {s = sent.s ! SQuest ++ "?"} ;
+ PhrImp imp = {s = (PhrUtt NoPConj (UttImpSg PPos imp) NoVoc).s ++ "!"} ;
+ PhrImpNeg imp = {s = (PhrUtt NoPConj (UttImpSg PNeg imp) NoVoc).s ++ "!"} ;
+
+ SentV v np = mkSent np (UseV v) ;
+
+ SentV2 v x y = mkSent x (ComplSlash (SlashV2a v) y) ;
+ SentV2Mass v x y = mkSent x (ComplSlash (SlashV2a v) (massNP y)) ;
+ SentV3 v x y z = mkSent x (ComplSlash (Slash2V3 v y) z) ;
+ SentA a x = mkSent x (UseComp (CompAP (PositA a))) ;
+ SentNP a x = mkSent x (UseComp (CompNP a)) ;
+
+ SentAdvV v np adv = mkSent np (AdvVP (UseV v) adv) ;
+ SentAdvV2 v x y adv = mkSent x (AdvVP (ComplSlash (SlashV2a v) y) adv) ;
+
+ ImpV v = ImpVP (UseV v) ;
+ ImpV2 v x = ImpVP (ComplSlash (SlashV2a v) x) ;
+
+ UsePron p = Lang.UsePron p ;
+ DetCN d n = Lang.DetCN d n ;
+ NumCN k cn = Lang.DetCN (DetArtCard (IndefArt) k) cn ;
+
+ UseN n = Lang.UseN n ;
+ ModCN a cn = AdjCN (PositA a) cn ;
+
+ UseMassN mn = Lang.UseN mn ;
+ ModMass a cn = AdjCN (PositA a) cn ;
+
+ param
+ SForm = SPos | SNeg | SQuest ;
+
+ oper
+ mkSent : NP -> VP -> Sent ;
+ mkSent np vp =
+ let cl = PredVP np vp
+ in {
+ s = table {
+ SPos => Predef.toStr S (UseCl Lang.TPres ASimul PPos cl) ;
+ SNeg => Predef.toStr S (UseCl Lang.TPres ASimul PNeg cl) ;
+ SQuest => Predef.toStr QS (UseQCl Lang.TPres ASimul PPos (QuestCl cl))
+ } ;
+ lock_Sent = <>
+ } ;
+
+ massNP : CN -> NP = MassNP ;
+
+}
diff --git a/examples/bronzeage/BronzeageNor.gf b/examples/bronzeage/BronzeageNor.gf
new file mode 100644
index 000000000..75b469cee
--- /dev/null
+++ b/examples/bronzeage/BronzeageNor.gf
@@ -0,0 +1,6 @@
+--# -path=.:present:prelude
+
+concrete BronzeageNor of Bronzeage = CatNor, SwadeshNor ** BronzeageI with
+ (Lang = LangNor) ** {
+ flags language = nb_NO;
+}
diff --git a/examples/bronzeage/BronzeageRus.gf b/examples/bronzeage/BronzeageRus.gf
new file mode 100644
index 000000000..916c78e38
--- /dev/null
+++ b/examples/bronzeage/BronzeageRus.gf
@@ -0,0 +1,7 @@
+--# -path=.:present:prelude
+
+concrete BronzeageRus of Bronzeage = CatRus, SwadeshRus ** BronzeageI with
+ (Lang = LangRus) ** {
+ flags language = ru_RU;
+}
+
diff --git a/examples/bronzeage/BronzeageSpa.gf b/examples/bronzeage/BronzeageSpa.gf
new file mode 100644
index 000000000..db10f2885
--- /dev/null
+++ b/examples/bronzeage/BronzeageSpa.gf
@@ -0,0 +1,7 @@
+--# -path=.:present:prelude
+
+concrete BronzeageSpa of Bronzeage = CatSpa, SwadeshSpa ** BronzeageI with
+ (Lang = LangSpa) ** {
+ flags language = es_ES;
+}
+
diff --git a/examples/bronzeage/BronzeageSwe.gf b/examples/bronzeage/BronzeageSwe.gf
new file mode 100644
index 000000000..24a4cf759
--- /dev/null
+++ b/examples/bronzeage/BronzeageSwe.gf
@@ -0,0 +1,8 @@
+--# -path=.:present:prelude
+
+concrete BronzeageSwe of Bronzeage = CatSwe, SwadeshSwe ** BronzeageI with
+ (Lang = LangSwe) ** {
+ flags language = sv_SE;
+}
+
+
diff --git a/examples/bronzeage/Swadesh.gf b/examples/bronzeage/Swadesh.gf
new file mode 100644
index 000000000..816c3a6b1
--- /dev/null
+++ b/examples/bronzeage/Swadesh.gf
@@ -0,0 +1,245 @@
+abstract Swadesh = Cat ** {
+
+ cat
+ MassN ;
+
+ fun
+
+ -- Pronouns
+
+ i_NP : Pron ;
+ youSg_NP : Pron ;
+ he_NP : Pron ;
+ we_NP : Pron ;
+ youPl_NP : Pron ;
+ they_NP : Pron ;
+ whoPl_IP : IP ; -- only one who in Swadesh 207
+ whoSg_IP : IP ;
+ whatPl_IP : IP ; -- only one what in Swadesh 207
+ whatSg_IP : IP ;
+
+ -- Determiners
+
+ that_Det : Det ;
+ this_Det : Det ;
+---- all_Predet : Predet ;
+ many_Det : Det ;
+ some_Det : Det ;
+
+ left_Ord : Ord ;
+ right_Ord : Ord ;
+
+ -- Adverbs
+
+ here_Adv : Adv ;
+ there_Adv : Adv ;
+ where_IAdv : IAdv ;
+ when_IAdv : IAdv ;
+ how_IAdv : IAdv ;
+ far_Adv : Adv ;
+
+ -- Conjunctions
+
+ and_Conj : Conj ;
+
+ -- Prepositions
+
+-- at_Prep : Prep ;
+ in_Prep : Prep ;
+ with_Prep : Prep ;
+
+ -- not -- ?
+ -- if -- ?
+ -- because -- ?
+
+ -- Numerals
+
+ one_Det : Card ;
+ two_Num : Card ;
+ three_Num : Card ;
+ four_Num : Card ;
+ five_Num : Card ;
+
+ -- Adjectives
+
+ bad_A : A ;
+ big_A : A ;
+ black_A : A ;
+ cold_A : A ;
+ correct_A : A ;
+ dirty_A : A ;
+ dry_A : A ;
+ dull_A : A ;
+ full_A : A ;
+ good_A : A ;
+ green_A : A ;
+ heavy_A : A ;
+ long_A : A ;
+ narrow_A : A ;
+ near_A : A ;
+ new_A : A ;
+ old_A : A ;
+---- other_A : A ;
+ red_A : A ;
+ rotten_A : A ;
+ round_A : A ;
+ sharp_A : A ;
+ short_A : A ;
+ small_A : A ;
+ smooth_A : A ;
+ straight_A : A ;
+ thick_A : A ;
+ thin_A : A ;
+ warm_A : A ;
+ wet_A : A ;
+ white_A : A ;
+ wide_A : A ;
+ yellow_A : A ;
+
+ -- Nouns
+
+ animal_N : N ;
+ ashes_N : MassN ;
+ back_N : N ;
+ bark_N : MassN ;
+ belly_N : N ;
+ bird_N : N ;
+ blood_N : MassN ;
+ bone_N : N ;
+ breast_N : N ;
+ child_N : N ;
+ cloud_N : N ;
+ day_N : N ;
+ dog_N : N ;
+ dust_N : MassN ;
+ ear_N : N ;
+ earth_N : MassN ;
+ egg_N : N ;
+ eye_N : N ;
+ fat_N : MassN ;
+---- father_N : N ;
+ feather_N : N ;
+ fingernail_N : N ;
+ fire_N : N ;
+ fish_N : N ;
+ flower_N : N ;
+ fog_N : MassN ;
+ foot_N : N ;
+ forest_N : N ;
+ fruit_N : N ;
+ grass_N : N ;
+ guts_N : N ;
+ hair_N : N ;
+ hand_N : N ;
+ head_N : N ;
+ heart_N : N ;
+ horn_N : N ;
+ husband_N : N ;
+ ice_N : MassN ;
+ knee_N : N ;
+ lake_N : N ;
+ leaf_N : N ;
+ leg_N : N ;
+ liver_N : N ;
+ louse_N : N ;
+ man_N : N ;
+ meat_N : MassN ;
+ moon_N : N ;
+---- mother_N : N ;
+ mountain_N : N ;
+ mouth_N : N ;
+ name_N : N ;
+ neck_N : N ;
+ night_N : N ;
+ nose_N : N ;
+ person_N : N ;
+ rain_N : MassN ;
+ river_N : N ;
+ road_N : N ;
+ root_N : N ;
+ rope_N : N ;
+ salt_N : MassN ;
+ sand_N : MassN ;
+ sea_N : N ;
+ seed_N : N ;
+ skin_N : N ;
+ sky_N : N ;
+ smoke_N : MassN ;
+ snake_N : N ;
+ snow_N : MassN ;
+ star_N : N ;
+ stick_N : N ;
+ stone_N : N ;
+ sun_N : N ;
+ tail_N : N ;
+ tongue_N : N ;
+ tooth_N : N ;
+ tree_N : N ;
+ water_N : MassN ;
+ wife_N : N ;
+ wind_N : N ;
+ wing_N : N ;
+ woman_N : N ;
+ worm_N : N ;
+ year_N : N ;
+
+ -- Verbs
+
+ bite_V2 : V2 ;
+ blow_V : V ;
+ breathe_V : V ;
+ burn_V : V ;
+ come_V : V ;
+ count_V2 : V2 ;
+ cut_V2 : V2 ;
+ die_V : V ;
+ dig_V : V ;
+ drink_V2 : V2 ;
+ eat_V2 : V2 ;
+ fall_V : V ;
+ fear_V2 : V2 ;
+ fight_V2 : V2 ;
+ float_V : V ;
+ flow_V : V ;
+ fly_V : V ;
+ freeze_V : V ;
+ give_V3 : V3 ;
+ hear_V2 : V2 ;
+ hit_V2 : V2 ;
+ hold_V2 : V2 ;
+ hunt_V2 : V2 ;
+ kill_V2 : V2 ;
+ know_V2 : V2 ;
+ laugh_V : V ;
+ lie_V : V ;
+ live_V : V ;
+ play_V : V ;
+ pull_V2 : V2 ;
+ push_V2 : V2 ;
+ rub_V2 : V2 ;
+ say_V : V ;
+ scratch_V2 : V2 ;
+ see_V2 : V2 ;
+ sew_V : V ;
+ sing_V : V ;
+ sit_V : V ;
+ sleep_V : V ;
+ smell_V : V ;
+ spit_V : V ;
+ split_V2 : V2 ;
+ squeeze_V2 : V2 ;
+ stab_V2 : V2 ;
+ stand_V : V ;
+ suck_V2 : V2 ;
+ swell_V : V ;
+ swim_V : V ;
+ think_V : V ;
+ throw_V2 : V2 ;
+ tie_V2 : V2 ;
+ turn_V : V ;
+ vomit_V : V ;
+ walk_V : V ;
+ wash_V2 : V2 ;
+ wipe_V2 : V2 ;
+
+}
diff --git a/examples/bronzeage/SwadeshAra.gf b/examples/bronzeage/SwadeshAra.gf
new file mode 100644
index 000000000..cfe54d1b2
--- /dev/null
+++ b/examples/bronzeage/SwadeshAra.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshAra of Swadesh = CatAra ** SwadeshI with
+ (Lang = LangAra) ;
+
diff --git a/examples/bronzeage/SwadeshDan.gf b/examples/bronzeage/SwadeshDan.gf
new file mode 100644
index 000000000..e667609f3
--- /dev/null
+++ b/examples/bronzeage/SwadeshDan.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshDan of Swadesh = CatDan ** SwadeshI with
+ (Lang = LangDan) ;
+
diff --git a/examples/bronzeage/SwadeshEng.gf b/examples/bronzeage/SwadeshEng.gf
new file mode 100644
index 000000000..5b10141c5
--- /dev/null
+++ b/examples/bronzeage/SwadeshEng.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshEng of Swadesh = CatEng ** SwadeshI with
+ (Lang = LangEng) ;
+
diff --git a/examples/bronzeage/SwadeshFin.gf b/examples/bronzeage/SwadeshFin.gf
new file mode 100644
index 000000000..191874c05
--- /dev/null
+++ b/examples/bronzeage/SwadeshFin.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshFin of Swadesh = CatFin ** SwadeshI with
+ (Lang = LangFin) ;
+
diff --git a/examples/bronzeage/SwadeshFre.gf b/examples/bronzeage/SwadeshFre.gf
new file mode 100644
index 000000000..bffe9e36e
--- /dev/null
+++ b/examples/bronzeage/SwadeshFre.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshFre of Swadesh = CatFre ** SwadeshI with
+ (Lang = LangFre) ;
+
diff --git a/examples/bronzeage/SwadeshGer.gf b/examples/bronzeage/SwadeshGer.gf
new file mode 100644
index 000000000..096d3496c
--- /dev/null
+++ b/examples/bronzeage/SwadeshGer.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshGer of Swadesh = CatGer ** SwadeshI with
+ (Lang = LangGer) ;
+
diff --git a/examples/bronzeage/SwadeshI.gf b/examples/bronzeage/SwadeshI.gf
new file mode 100644
index 000000000..1825502cd
--- /dev/null
+++ b/examples/bronzeage/SwadeshI.gf
@@ -0,0 +1,226 @@
+incomplete concrete SwadeshI of Swadesh = open Lang in {
+
+ lincat
+ MassN = Lang.N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = Lang.i_Pron ;
+ youSg_NP = Lang.youSg_Pron ;
+ he_NP = Lang.he_Pron ;
+ we_NP = Lang.we_Pron ;
+ youPl_NP = Lang.youPl_Pron ;
+ they_NP = Lang.they_Pron ;
+ whoPl_IP = Lang.whoPl_IP ;
+ whoSg_IP = Lang.whoSg_IP ;
+ whatPl_IP = Lang.whatPl_IP ;
+ whatSg_IP = Lang.whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetQuant (this_Quant) NumSg ;
+ that_Det = DetQuant (that_Quant) NumSg ;
+ many_Det = Lang.many_Det ;
+ some_Det = someSg_Det ;
+---- few_Det = few_Det ;
+
+ left_Ord = Lang.left_Ord ;
+ right_Ord = Lang.right_Ord ;
+ -- Adverbs
+ here_Adv = Lang.here_Adv;
+ there_Adv = Lang.there_Adv;
+ where_IAdv = Lang.where_IAdv;
+ when_IAdv = Lang.when_IAdv;
+ how_IAdv = Lang.how_IAdv;
+ far_Adv = Lang.far_Adv ;
+ -- not : Adv ; -- ?
+ -- Conjunctions
+ and_Conj = Lang.and_Conj ;
+ -- Prepositions
+ in_Prep = Lang.in_Prep ;
+ with_Prep = Lang.with_Prep ;
+ -- Numerals
+ one_Det = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 pot01)))) ;
+ two_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+ -- Adjectives
+ bad_A = Lang.bad_A ;
+ big_A = Lang.big_A ;
+ black_A = Lang.black_A ;
+ cold_A = Lang.cold_A ;
+ correct_A = Lang.correct_A ;
+ dirty_A = Lang.dirty_A ;
+ dry_A = Lang.dry_A ;
+ dull_A = Lang.dull_A ;
+ full_A = Lang.full_A ;
+ good_A = Lang.good_A ;
+ green_A = Lang.green_A ;
+ heavy_A = Lang.heavy_A ;
+ long_A = Lang.long_A ;
+ narrow_A = Lang.narrow_A ;
+ near_A = Lang.near_A ;
+ new_A = Lang.new_A ;
+ old_A = Lang.old_A ;
+---- other_A = Lang.other_A ;
+ red_A = Lang.red_A ;
+ rotten_A = Lang.rotten_A ;
+ round_A = Lang.round_A ;
+ sharp_A = Lang.sharp_A ;
+ short_A = Lang.short_A ;
+ small_A = Lang.small_A ;
+ smooth_A = Lang.smooth_A ;
+ straight_A = Lang.straight_A ;
+ thick_A = Lang.thick_A ;
+ thin_A = Lang.thin_A ;
+ warm_A = Lang.warm_A ;
+ wet_A = Lang.wet_A ;
+ white_A = Lang.white_A ;
+ wide_A = Lang.wide_A ;
+ yellow_A = Lang.yellow_A ;
+ -- Nouns
+ animal_N = Lang.animal_N ;
+ ashes_N = Lang.ashes_N ;
+ back_N = Lang.back_N ;
+ bark_N = Lang.bark_N ;
+ belly_N = Lang.belly_N ;
+ bird_N = Lang.bird_N;
+ blood_N = Lang.blood_N ;
+ bone_N = Lang.bone_N ;
+ breast_N = Lang.breast_N ;
+ child_N = Lang.child_N ;
+ cloud_N = Lang.cloud_N ;
+ day_N = Lang.day_N ;
+ dog_N = Lang.dog_N ;
+ dust_N = Lang.dust_N ;
+ ear_N = Lang.ear_N ;
+ earth_N = Lang.earth_N ;
+ egg_N = Lang.egg_N ;
+ eye_N = Lang.eye_N ;
+ fat_N = Lang.fat_N ;
+ feather_N = Lang.feather_N ;
+ fingernail_N = Lang.fingernail_N ;
+ fire_N = Lang.fire_N ;
+ fish_N = Lang.fish_N ;
+ flower_N = Lang.flower_N ;
+ fog_N = Lang.fog_N ;
+ foot_N = Lang.foot_N ;
+ forest_N = Lang.forest_N ;
+ fruit_N = Lang.fruit_N ;
+ grass_N = Lang.grass_N ;
+ guts_N = Lang.guts_N ;
+ hair_N = Lang.hair_N ;
+ hand_N = Lang.hand_N ;
+ head_N = Lang.head_N ;
+ heart_N = Lang.heart_N ;
+ horn_N = Lang.horn_N ;
+ husband_N = Lang.man_N ; --- aviomies
+ ice_N = Lang.ice_N ;
+ knee_N = Lang.knee_N ;
+ lake_N = Lang.lake_N ;
+ leaf_N = Lang.leaf_N ;
+ leg_N = Lang.leg_N ;
+ liver_N = Lang.liver_N ;
+ louse_N = Lang.louse_N ;
+ man_N = Lang.man_N ;
+ meat_N = Lang.meat_N ;
+ moon_N = Lang.moon_N ;
+---- mother_N = Lang.mother_N ;
+ mountain_N = Lang.mountain_N ;
+ mouth_N = Lang.mouth_N ;
+ name_N = Lang.name_N ;
+ neck_N = Lang.neck_N ;
+ night_N = Lang.night_N ;
+ nose_N = Lang.nose_N ;
+ person_N = Lang.person_N ;
+ rain_N = Lang.rain_N ;
+ river_N = Lang.river_N ;
+ road_N = Lang.road_N ;
+ root_N = Lang.root_N ;
+ rope_N = Lang.rope_N ;
+ salt_N = Lang.salt_N ;
+ sand_N = Lang.sand_N ;
+ sea_N = Lang.sea_N ;
+ seed_N = Lang.seed_N ;
+ skin_N = Lang.skin_N ;
+ sky_N = Lang.sky_N ;
+ smoke_N = Lang.smoke_N ;
+ snake_N = Lang.snake_N ;
+ snow_N = Lang.snow_N ;
+ star_N = Lang.star_N ;
+ stick_N = Lang.stick_N ;
+ stone_N = Lang.stone_N ;
+ sun_N = Lang.sun_N ;
+ tail_N = Lang.tail_N ;
+ tongue_N = Lang.tongue_N ;
+ tooth_N = Lang.tooth_N ;
+ tree_N = Lang.tree_N ;
+ water_N = Lang.water_N ;
+ wife_N = Lang.wife_N ;
+ wind_N = Lang.wind_N ;
+ wing_N = Lang.wing_N ;
+ woman_N = Lang.woman_N ;
+ worm_N = Lang.worm_N ;
+ year_N = Lang.year_N ;
+ -- Verbs
+ bite_V2 = Lang.bite_V2 ;
+ blow_V = Lang.blow_V ;
+ breathe_V = Lang.breathe_V ;
+ burn_V = Lang.burn_V ;
+ come_V = Lang.come_V ;
+ count_V2 = Lang.count_V2 ;
+ cut_V2 = Lang.cut_V2 ;
+ die_V = Lang.die_V ;
+ dig_V = Lang.dig_V ;
+ drink_V2 = Lang.drink_V2 ;
+ eat_V2 = Lang.eat_V2 ;
+ fall_V = Lang.fall_V ;
+ fear_V2 = Lang.fear_V2 ;
+ fight_V2 = Lang.fight_V2 ;
+ float_V = Lang.float_V ;
+ flow_V = Lang.flow_V ;
+ fly_V = Lang.fly_V ;
+ freeze_V = Lang.freeze_V ;
+ give_V3 = Lang.give_V3 ;
+ hear_V2 = Lang.hear_V2 ;
+ hit_V2 = Lang.hit_V2 ;
+ hold_V2 = Lang.hold_V2 ;
+ hunt_V2 = Lang.hunt_V2 ;
+ kill_V2 = Lang.kill_V2 ;
+ know_V2 = Lang.know_V2 ;
+ laugh_V = Lang.laugh_V ;
+ lie_V = Lang.lie_V ;
+ live_V = Lang.live_V ;
+ play_V = Lang. play_V2 ;
+ pull_V2 = Lang.pull_V2 ;
+ push_V2 = Lang.push_V2 ;
+ rub_V2 = Lang.rub_V2 ;
+ say_V = Lang.say_VS ;
+ scratch_V2 = Lang.scratch_V2 ;
+ see_V2 = Lang.see_V2 ;
+ sew_V = Lang.sew_V ;
+ sing_V = Lang.sing_V ;
+ sit_V = Lang.sit_V ;
+ sleep_V = Lang.sleep_V ;
+ smell_V = Lang.smell_V ;
+ spit_V = Lang.spit_V ;
+ split_V2 = Lang.split_V2 ;
+ squeeze_V2 = Lang.squeeze_V2 ;
+ stab_V2 = Lang.stab_V2 ;
+ stand_V = Lang.stand_V ;
+ suck_V2 = Lang.suck_V2 ;
+ swell_V = Lang.swell_V ;
+ swim_V = Lang.swim_V ;
+ think_V = Lang.think_V ;
+ throw_V2 = Lang.throw_V2 ;
+ tie_V2 = Lang.tie_V2 ;
+ turn_V = Lang.turn_V ;
+ vomit_V = Lang.vomit_V ;
+ walk_V = Lang.walk_V ;
+ wash_V2 = Lang.wash_V2 ;
+ wipe_V2 = Lang.wipe_V2 ;
+
+}
diff --git a/examples/bronzeage/SwadeshIta.gf b/examples/bronzeage/SwadeshIta.gf
new file mode 100644
index 000000000..b84295867
--- /dev/null
+++ b/examples/bronzeage/SwadeshIta.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshIta of Swadesh = CatIta ** SwadeshI with
+ (Lang = LangIta) ;
+
diff --git a/examples/bronzeage/SwadeshNor.gf b/examples/bronzeage/SwadeshNor.gf
new file mode 100644
index 000000000..5d392462d
--- /dev/null
+++ b/examples/bronzeage/SwadeshNor.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshNor of Swadesh = CatNor ** SwadeshI with
+ (Lang = LangNor) ;
+
diff --git a/examples/bronzeage/SwadeshRus.gf b/examples/bronzeage/SwadeshRus.gf
new file mode 100644
index 000000000..263819f07
--- /dev/null
+++ b/examples/bronzeage/SwadeshRus.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshRus of Swadesh = CatRus ** SwadeshI with
+ (Lang = LangRus) ;
+
diff --git a/examples/bronzeage/SwadeshSpa.gf b/examples/bronzeage/SwadeshSpa.gf
new file mode 100644
index 000000000..48de83341
--- /dev/null
+++ b/examples/bronzeage/SwadeshSpa.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshSpa of Swadesh = CatSpa ** SwadeshI with
+ (Lang = LangSpa) ;
+
diff --git a/examples/bronzeage/SwadeshSwe.gf b/examples/bronzeage/SwadeshSwe.gf
new file mode 100644
index 000000000..2a82b2bc4
--- /dev/null
+++ b/examples/bronzeage/SwadeshSwe.gf
@@ -0,0 +1,5 @@
+--# -path=.:present:prelude
+
+concrete SwadeshSwe of Swadesh = CatSwe ** SwadeshI with
+ (Lang = LangSwe) ;
+