From 6c46034c09767ddced83ce7541a2c03c717b3f0a Mon Sep 17 00:00:00 2001
From: aarne
Date: Tue, 7 Mar 2006 18:26:47 +0000
Subject: [PATCH] merging Lexicon with Swadesh
---
examples/bronzeage/Swadesh.gf | 63 ++---
examples/bronzeage/SwadeshEng.gf | 248 +---------------
examples/bronzeage/SwadeshFin.gf | 270 +-----------------
examples/bronzeage/SwadeshFre.gf | 260 +----------------
examples/bronzeage/SwadeshI.gf | 228 +++++++++++++++
examples/bronzeage/SwadeshIta.gf | 259 +----------------
examples/bronzeage/SwadeshNor.gf | 253 +----------------
examples/bronzeage/SwadeshSpa.gf | 263 +----------------
examples/bronzeage/SwadeshSwe.gf | 251 +----------------
examples/bronzeage/old/SwadeshEng.gf | 243 ++++++++++++++++
examples/bronzeage/old/SwadeshFin.gf | 269 ++++++++++++++++++
examples/bronzeage/old/SwadeshFre.gf | 259 +++++++++++++++++
examples/bronzeage/{ => old}/SwadeshGer.gf | 46 +--
examples/bronzeage/old/SwadeshIta.gf | 258 +++++++++++++++++
examples/bronzeage/old/SwadeshNor.gf | 252 +++++++++++++++++
examples/bronzeage/{ => old}/SwadeshRus.gf | 0
examples/bronzeage/old/SwadeshSpa.gf | 262 +++++++++++++++++
examples/bronzeage/old/SwadeshSwe.gf | 252 +++++++++++++++++
lib/resource-1.0/abstract/Lexicon.gf | 151 ++++++++--
lib/resource-1.0/abstract/Structural.gf | 1 +
lib/resource-1.0/doc/clt2006.html | 312 +++++++++++++++++++--
lib/resource-1.0/doc/clt2006.txt | 261 +++++++++++++++--
lib/resource-1.0/doc/editor.png | Bin 0 -> 20552 bytes
lib/resource-1.0/english/LexiconEng.gf | 131 ++++++++-
lib/resource-1.0/english/StructuralEng.gf | 2 +
lib/resource-1.0/finnish/LexiconFin.gf | 163 +++++++++--
lib/resource-1.0/finnish/ParadigmsFin.gf | 6 +-
lib/resource-1.0/french/LexiconFre.gf | 127 ++++++++-
lib/resource-1.0/german/LexiconGer.gf | 135 ++++++++-
lib/resource-1.0/italian/LexiconIta.gf | 137 ++++++++-
lib/resource-1.0/minimal/MkLex.hs | 21 ++
lib/resource-1.0/norwegian/LexiconNor.gf | 138 ++++++++-
lib/resource-1.0/romance/CommonRomance.gf | 5 +
lib/resource-1.0/spanish/LexiconSpa.gf | 129 ++++++++-
lib/resource-1.0/swedish/LexiconSwe.gf | 129 ++++++++-
35 files changed, 3837 insertions(+), 1947 deletions(-)
create mode 100644 examples/bronzeage/SwadeshI.gf
create mode 100644 examples/bronzeage/old/SwadeshEng.gf
create mode 100644 examples/bronzeage/old/SwadeshFin.gf
create mode 100644 examples/bronzeage/old/SwadeshFre.gf
rename examples/bronzeage/{ => old}/SwadeshGer.gf (87%)
create mode 100644 examples/bronzeage/old/SwadeshIta.gf
create mode 100644 examples/bronzeage/old/SwadeshNor.gf
rename examples/bronzeage/{ => old}/SwadeshRus.gf (100%)
create mode 100644 examples/bronzeage/old/SwadeshSpa.gf
create mode 100644 examples/bronzeage/old/SwadeshSwe.gf
create mode 100644 lib/resource-1.0/doc/editor.png
diff --git a/examples/bronzeage/Swadesh.gf b/examples/bronzeage/Swadesh.gf
index bd96fdd9f..8e7e488c3 100644
--- a/examples/bronzeage/Swadesh.gf
+++ b/examples/bronzeage/Swadesh.gf
@@ -22,11 +22,9 @@ abstract Swadesh = Cat ** {
that_Det : Det ;
this_Det : Det ;
- all_Det : Det ;
+---- all_Predet : Predet ;
many_Det : Det ;
some_Det : Det ;
- few_Det : Det ;
- other_Det : Det ;
left_Ord : Ord ;
right_Ord : Ord ;
@@ -81,6 +79,7 @@ abstract Swadesh = Cat ** {
near_A : A ;
new_A : A ;
old_A : A ;
+ other_A : A ;
red_A : A ;
rotten_A : A ;
round_A : A ;
@@ -118,7 +117,7 @@ abstract Swadesh = Cat ** {
egg_N : N ;
eye_N : N ;
fat_N : MassN ;
- father_N : N ;
+---- father_N : N ;
feather_N : N ;
fingernail_N : N ;
fire_N : N ;
@@ -146,7 +145,7 @@ abstract Swadesh = Cat ** {
man_N : N ;
meat_N : MassN ;
moon_N : N ;
- mother_N : N ;
+---- mother_N : N ;
mountain_N : N ;
mouth_N : N ;
name_N : N ;
@@ -186,61 +185,61 @@ abstract Swadesh = Cat ** {
-- Verbs
- bite_V : V2 ;
+ bite_V2 : V2 ;
blow_V : V ;
breathe_V : V ;
burn_V : V ;
come_V : V ;
- count_V : V2 ;
- cut_V : V2 ;
+ count_V2 : V2 ;
+ cut_V2 : V2 ;
die_V : V ;
dig_V : V ;
- drink_V : V2 ;
- eat_V : V2 ;
+ drink_V2 : V2 ;
+ eat_V2 : V2 ;
fall_V : V ;
- fear_V : V2 ;
- fight_V : V2 ;
+ fear_V2 : V2 ;
+ fight_V2 : V2 ;
float_V : V ;
flow_V : V ;
fly_V : V ;
freeze_V : V ;
- give_V : V3 ;
- hear_V : V2 ;
- hit_V : V2 ;
- hold_V : V2 ;
- hunt_V : V2 ;
- kill_V : V2 ;
- know_V : V2 ;
+ 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_V : V2 ;
- push_V : V2 ;
- rub_V : V2 ;
+ pull_V2 : V2 ;
+ push_V2 : V2 ;
+ rub_V2 : V2 ;
say_V : V ;
- scratch_V : V2 ;
- see_V : V2 ;
+ 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_V : V2 ;
- squeeze_V : V2 ;
- stab_V : V2 ;
+ split_V2 : V2 ;
+ squeeze_V2 : V2 ;
+ stab_V2 : V2 ;
stand_V : V ;
- suck_V : V2 ;
+ suck_V2 : V2 ;
swell_V : V ;
swim_V : V ;
think_V : V ;
- throw_V : V2 ;
- tie_V : V2 ;
+ throw_V2 : V2 ;
+ tie_V2 : V2 ;
turn_V : V ;
vomit_V : V ;
walk_V : V ;
- wash_V : V2 ;
- wipe_V : V2 ;
+ wash_V2 : V2 ;
+ wipe_V2 : V2 ;
}
diff --git a/examples/bronzeage/SwadeshEng.gf b/examples/bronzeage/SwadeshEng.gf
index 1f7ef9108..5b10141c5 100644
--- a/examples/bronzeage/SwadeshEng.gf
+++ b/examples/bronzeage/SwadeshEng.gf
@@ -1,247 +1,5 @@
---# -path=.:../abstract:../common:../english:../../prelude
+--# -path=.:present:prelude
-concrete SwadeshEng of Swadesh = CatEng
- ** open MorphoEng, LangEng, ParadigmsEng, IrregEng, Prelude in {
+concrete SwadeshEng of Swadesh = CatEng ** SwadeshI with
+ (Lang = LangEng) ;
- lincat
- MassN = N ;
-
- lin
-
- -- Pronouns
-
- i_NP = i_Pron ;
- youSg_NP = youSg_Pron ;
- he_NP = he_Pron ;
- we_NP = we_Pron ;
- youPl_NP = youPl_Pron ;
- they_NP = they_Pron ;
- whoPl_IP = whoPl_IP ;
- whoSg_IP = whoSg_IP ;
- whatPl_IP = whatPl_IP ;
- whatSg_IP = whatSg_IP ;
-
- -- Determiners
-
- this_Det = DetSg (SgQuant this_Quant) NoOrd ;
- that_Det = DetSg (SgQuant that_Quant) NoOrd ;
- all_Det = mkDeterminer Pl "all" ;
- many_Det = many_Det ;
- some_Det = someSg_Det ;
- few_Det = mkDeterminer Pl "few" ;
- other_Det = mkDeterminer Pl "other" ;
-
- left_Ord = ss "left" ;
- right_Ord = ss "right" ;
-
- -- Adverbs
-
- here_Adv = here_Adv;
- there_Adv = there_Adv;
- where_IAdv = where_IAdv;
- when_IAdv = when_IAdv;
- how_IAdv = how_IAdv;
- far_Adv = mkAdv "far" ;
-
- -- not : Adv ; -- ?
-
- -- Conjunctions
-
- and_Conj = and_Conj ;
-
- -- Prepositions
-
- at_Prep = ss "at" ;
- in_Prep = ss "in" ;
- with_Prep = ss "with" ;
-
- -- Numerals
-
- one_Det = DetSg one_Quant NoOrd ;
- two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
- three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
- four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
- five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
-
- -- Adjectives
-
- bad_A = bad_A ;
- big_A = big_A ;
- black_A = black_A ;
- cold_A = cold_A ;
- correct_A = (regA "correct") ;
- dirty_A = dirty_A ;
- dry_A = regA "dry" ;
- dull_A = regA "dull" ;
- full_A = regA "full" ;
- good_A = good_A ;
- green_A = green_A ;
- heavy_A = regA "heavy" ;
- long_A = long_A ;
- narrow_A = narrow_A ;
- near_A = regA "near" ;
- new_A = new_A ;
- old_A = old_A ;
- red_A = red_A ;
- rotten_A = (regA "rotten") ;
- round_A = regA "round" ;
- sharp_A = regA "sharp" ;
- short_A = short_A ;
- small_A = small_A ;
- smooth_A = regA "smooth" ;
- straight_A = regA "straight" ;
- thick_A = thick_A ;
- thin_A = thin_A ;
- warm_A = warm_A ;
- wet_A = regA "wet" ; ----
- white_A = white_A ;
- wide_A = regA "wide" ;
- yellow_A = yellow_A ;
-
- -- Nouns
-
- animal_N = regN "animal" ;
- ashes_N = regN "ash" ; -- FIXME: plural only?
- back_N = regN "back" ;
- bark_N = regN "bark" ;
- belly_N = regN "belly" ;
- bird_N = bird_N;
- blood_N = regN "blood" ;
- bone_N = regN "bone" ;
- breast_N = regN "breast" ;
- child_N = child_N ;
- cloud_N = regN "cloud" ;
- day_N = regN "day" ;
- dog_N = dog_N ;
- dust_N = regN "dust" ;
- ear_N = regN "ear" ;
- earth_N = regN "earth" ;
- egg_N = regN "egg" ;
- eye_N = regN "eye" ;
- fat_N = regN "fat" ;
- father_N = UseN2 father_N2 ;
- feather_N = regN "feather" ;
- fingernail_N = regN "fingernail" ;
- fire_N = regN "fire" ;
- fish_N = fish_N ;
- flower_N = regN "flower" ;
- fog_N = regN "fog" ;
- foot_N = mk2N "foot" "feet" ;
- forest_N = regN "forest" ;
- fruit_N = fruit_N ;
- grass_N = regN "grass" ;
- guts_N = regN "gut" ; -- FIXME: no singular
- hair_N = regN "hair" ;
- hand_N = regN "hand" ;
- head_N = regN "head" ;
- heart_N = regN "heart" ;
- horn_N = regN "horn" ;
- husband_N = genderN masculine (regN "husband") ;
- ice_N = regN "ice" ;
- knee_N = regN "knee" ;
- lake_N = lake_N ;
- leaf_N = mk2N "leaf" "leaves" ;
- leg_N = regN "leg" ;
- liver_N = regN "liver" ;
- louse_N = mk2N "louse" "lice" ;
- man_N = man_N ;
- meat_N = meat_N ;
- moon_N = moon_N ;
- mother_N = UseN2 mother_N2 ;
- mountain_N = mountain_N ;
- mouth_N = regN "mouth" ;
- name_N = regN "name" ;
- neck_N = regN "neck" ;
- night_N = regN "night" ;
- nose_N = regN "nose" ;
- person_N = genderN human (regN "person") ;
- rain_N = regN "rain" ;
- river_N = river_N ;
- road_N = regN "road" ;
- root_N = regN "root" ;
- rope_N = regN "rope" ;
- salt_N = regN "salt" ;
- sand_N = regN "sand" ;
- sea_N = sea_N ;
- seed_N = regN "seed" ;
- skin_N = regN "skin" ;
- sky_N = regN "sky" ;
- smoke_N = regN "smoke" ;
- snake_N = snake_N ;
- snow_N = regN "snow" ;
- star_N = star_N ;
- stick_N = regN "stick" ;
- stone_N = stone_N ;
- sun_N = sun_N ;
- tail_N = regN "tail" ;
- tongue_N = regN "tongue" ;
- tooth_N = mk2N "tooth" "teeth" ;
- tree_N = tree_N ;
- water_N = water_N ;
- wife_N = genderN feminine (mk2N "wife" "wives") ;
- wind_N = regN "wind" ;
- wing_N = regN "wing" ;
- woman_N = woman_N ;
- worm_N = regN "worm" ;
- year_N = regN "year" ;
-
- -- Verbs
-
- bite_V = dirV2 bite_V ;
- blow_V = blow_V ;
- breathe_V = dirV2 (regV "breathe") ;
- burn_V = burn_V ;
- come_V = come_V ;
- count_V = dirV2 (regV "count") ;
- cut_V = dirV2 cut_V ;
- die_V = die_V ;
- dig_V = dig_V ;
- drink_V = dirV2 drink_V ;
- eat_V = dirV2 eat_V ;
- fall_V = fall_V ;
- fear_V = dirV2 (regV "fear") ;
- fight_V = dirV2 fight_V ;
- float_V = regV "float" ;
- flow_V = regV "flow" ;
- fly_V = fly_V ;
- freeze_V = freeze_V ;
- give_V = dirV3 give_V "to" ;
- hear_V = dirV2 hear_V ;
- hit_V = dirV2 hit_V ;
- hold_V = dirV2 hold_V ;
- hunt_V = dirV2 (regV "hunt") ;
- kill_V = dirV2 (regV "kill") ;
- know_V = dirV2 know_V ;
- laugh_V = regV "laugh" ;
- lie_V = lie_V ;
- live_V = live_V ;
- play_V = regV "play" ;
- pull_V = dirV2 (regV "pull") ;
- push_V = dirV2 (regV "push") ;
- rub_V = dirV2 (regDuplV "rub") ;
- say_V = say_V ;
- scratch_V = dirV2 (regV "scratch") ;
- see_V = dirV2 see_V ;
- sew_V = sew_V ;
- sing_V = sing_V ;
- sit_V = sit_V ;
- sleep_V = sleep_V ;
- smell_V = regV "smell" ;
- spit_V = spit_V ;
- split_V = dirV2 split_V ;
- squeeze_V = dirV2 (regV "squeeze") ;
- stab_V = dirV2 (regDuplV "stab") ;
- stand_V = stand_V ;
- suck_V = dirV2 (regV "suck") ;
- swell_V = swell_V ;
- swim_V = swim_V ;
- think_V = think_V ;
- throw_V = dirV2 throw_V ;
- tie_V = dirV2 (regV "tie") ;
- turn_V = regV "turn" ;
- vomit_V = regV "vomit" ;
- walk_V = walk_V ;
- wash_V = dirV2 (regV "wash") ;
- wipe_V = dirV2 (regV "wipe") ;
-
-}
diff --git a/examples/bronzeage/SwadeshFin.gf b/examples/bronzeage/SwadeshFin.gf
index cde914ee0..191874c05 100644
--- a/examples/bronzeage/SwadeshFin.gf
+++ b/examples/bronzeage/SwadeshFin.gf
@@ -1,269 +1,5 @@
---# -path=.:../present:../finnish:../common:../abstract:../../prelude
+--# -path=.:present:prelude
-concrete SwadeshFin of Swadesh = CatFin
- ** open MorphoFin, LangFin, ParadigmsFin, Prelude in {
+concrete SwadeshFin of Swadesh = CatFin ** SwadeshI with
+ (Lang = LangFin) ;
- flags optimize=values ;
-
- lincat
- MassN = N ;
-
- lin
-
- -- Pronouns
-
- i_NP = i_Pron ;
- youSg_NP = youSg_Pron ;
- he_NP = he_Pron ;
- we_NP = we_Pron ;
- youPl_NP = youPl_Pron ;
- they_NP = they_Pron ;
- whoPl_IP = whoPl_IP ;
- whoSg_IP = whoSg_IP ;
- whatPl_IP = whatPl_IP ;
- whatSg_IP = whatSg_IP ;
-
- -- Determiners
-
- this_Det = DetSg (SgQuant this_Quant) NoOrd ;
- that_Det = DetSg (SgQuant that_Quant) NoOrd ;
- all_Det = mkDet Pl {s = \\nf =>
- let
- kaiket = (nhn (sKorpi "kaikki" "kaiken" "kaikkena")).s
- in
- case nf of {
- NCase Pl Nom => "kaikki" ;
- _ => kaiket ! nf
- }
- } ;
- many_Det = many_Det ;
- some_Det = someSg_Det ;
- few_Det = mkDet Sg (regN "harva") ;
- other_Det = mkDet Sg (regN "muu") ;
-
- left_Ord = mkOrd (regN "vasen") ;
- right_Ord = mkOrd (regN "oikea") ;
-
- oper
- mkOrd : N -> Ord ;
- mkOrd x = {s = \\n,c => x.s ! NCase n c; lock_Ord = <> } ;
-
- lin
-
- -- Adverbs
-
- here_Adv = here_Adv;
- there_Adv = there_Adv;
- where_IAdv = where_IAdv;
- when_IAdv = when_IAdv;
- how_IAdv = how_IAdv;
- far_Adv = mkAdv "kaukana" ;
-
- -- not : Adv ; -- ?
-
- -- Conjunctions
-
- and_Conj = and_Conj ;
-
- -- Prepositions
-
- at_Prep = casePrep adessive ;
- in_Prep = casePrep inessive ;
- with_Prep = postGenPrep "kanssa" ;
-
- -- Numerals
-
- one_Det = DetSg one_Quant NoOrd ;
- two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
- three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
- four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
- five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
-
- -- Adjectives
-
- bad_A = bad_A ;
- big_A = big_A ;
- black_A = black_A ;
- cold_A = cold_A ;
- correct_A = regA "oikea" ;
- dirty_A = dirty_A ;
- dry_A = mkADeg (regN "kuiva") "kuivempi" "kuivin" ;
- dull_A = mkADeg (regN "tylsä") "tylsempi" "tylsin" ;
- full_A = mkADeg (reg3N "täysi" "täyden" "täysiä") "täydempi" "täysin" ;
- good_A = good_A ;
- green_A = green_A ;
- heavy_A = regA "raskas" ;
- long_A = long_A ;
- narrow_A = narrow_A ;
- near_A = regA "läheinen" ;
- new_A = new_A ;
- old_A = old_A ;
- red_A = red_A ;
- rotten_A = regA "mätä" ;
- round_A = regA "pyöreä" ;
- sharp_A = regA "terävä" ;
- short_A = short_A ;
- small_A = small_A ;
- smooth_A = regA "sileä" ;
- straight_A = mkADeg (regN "suora") "suorempi" "suorin" ;
- thick_A = thick_A ;
- thin_A = thin_A ;
- warm_A = warm_A ;
- wet_A = mkADeg (regN "märkä") "märempi" "märin" ;
- white_A = white_A ;
- wide_A = regA "leveä" ;
- yellow_A = yellow_A ;
-
- -- Nouns
-
- animal_N = reg3N "eläin" "eläimen" "eläimiä" ;
- ashes_N = regN "tuhka" ;
- back_N = regN "selkä" ;
- bark_N = regN "kaarna" ;
- belly_N = regN "vatsa" ;
- bird_N = bird_N;
- blood_N = nMeri "veri" ;
- bone_N = regN "luu" ;
- breast_N = regN "rinta" ;
- child_N = child_N ;
- cloud_N = reg2N "pilvi" "pilviä" ;
- day_N = regN "päivä" ;
- dog_N = dog_N ;
- dust_N = regN "pöly" ;
- ear_N = regN "korva" ;
- earth_N = regN "maa" ;
- egg_N = regN "muna" ;
- eye_N = regN "silmä" ;
- fat_N = regN "rasva" ;
- father_N = regN "isä" ;
- feather_N = reg3N "höyhen" "höyhenen" "höyheniä" ;
- fingernail_N = reg3N "kynsi" "kynnen" "kynsiä" ;
- fire_N = reg2N "tuli" "tulia" ;
- fish_N = fish_N ;
- flower_N = regN "kukka" ;
- fog_N = regN "sumu" ;
- foot_N = regN "jalka" ;
- forest_N = regN "metsä" ;
- fruit_N = fruit_N ;
- grass_N = regN "ruoho" ;
- guts_N = regN "sisälmys" ; --- suoli
- hair_N = regN "hius" ;
- hand_N = reg3N "käsi" "käden" "käsiä" ;
- head_N = regN "pää" ;
- heart_N = reg3N "sydän" "sydämen" "sydämiä" ;
- horn_N = reg2N "sarvi" "sarvia" ;
- husband_N = man_N ; --- aviomies
- ice_N = regN "jää" ;
- knee_N = reg2N "polvi" "polvia" ;
- lake_N = lake_N ;
- leaf_N = reg2N "lehti" "lehtiä" ;
- leg_N = regN "jalka" ; --- sääri
- liver_N = regN "maksa" ;
- louse_N = regN "lude" ;
- man_N = man_N ;
- meat_N = meat_N ;
- moon_N = moon_N ;
- mother_N = regN "äiti" ;
- mountain_N = mountain_N ;
- mouth_N = regN "suu" ;
- name_N = reg2N "nimi" "nimiä" ;
- neck_N = regN "niska" ;
- night_N = regN "yö" ;
- nose_N = regN "nenä" ;
- person_N = regN "henkilö" ;
- rain_N = regN "sade" ;
- river_N = river_N ;
- road_N = regN "tie" ;
- root_N = reg2N "juuri" "juuria" ;
- rope_N = reg3N "köysi" "köyden" "köysiä" ;
- salt_N = regN "suola" ;
- sand_N = regN "hiekka" ;
- sea_N = sea_N ;
- seed_N = regN "siemen" ;
- skin_N = regN "nahka" ;
- sky_N = reg3N "taivas" "taivaan" "taivaita" ;
- smoke_N = regN "savu" ;
- snake_N = snake_N ;
- snow_N = sgpartN (nMeri "lumi") "lunta" ;
- star_N = star_N ;
- stick_N = regN "keppi" ;
- stone_N = stone_N ;
- sun_N = sun_N ;
- tail_N = regN "häntä" ;
- tongue_N = reg2N "kieli" "kieliä" ;
- tooth_N = regN "hammas" ;
- tree_N = tree_N ;
- water_N = water_N ;
- wife_N = regN "vaimo" ;
- wind_N = reg2N "tuuli" "tuulia" ;
- wing_N = reg2N "siipi" "siipiä" ;
- woman_N = woman_N ;
- worm_N = regN "mato" ;
- year_N = reg3N "vuosi" "vuoden" "vuosia" ;
-
- -- Verbs
-
- bite_V = dirV2 (regV "purra") ;
- blow_V = regV "puhaltaa" ;
- breathe_V = dirV2 (regV "hengittää") ;
- burn_V = regV "palaa" ;
- come_V = come_V ;
- count_V = dirV2 (regV "laskea") ;
- cut_V = dirV2 (reg2V "leikata" "leikkasi") ;
- die_V = regV "kuolla";
- dig_V = regV "kaivaa" ;
- drink_V = dirV2 ( drink_V2) ;
- eat_V = dirV2 ( eat_V2) ;
- fall_V = reg3V "pudota" "putoan" "putosi" ;
- fear_V = dirV2 (reg3V "pelätä" "pelkään" "pelkäsi") ;
- fight_V = dirV2 (regV "taistella") ;
- float_V = regV "kellua" ;
- flow_V = reg3V "virrata" "virtaan" "virtasi" ;
- fly_V = regV "lentää" ;
- freeze_V = regV "jäätyä" ;
- give_V = dirdirV3 (regV "antaa") ;
- hear_V = dirV2 ( hear_V2) ;
- hit_V = dirV2 (regV "lyödä") ;
- hold_V = dirV2 (regV "pitää") ;
- hunt_V = dirV2 (regV "metsästää") ;
- kill_V = dirV2 (regV "tappaa") ;
- know_V = dirV2 (reg2V "tuntea" "tunsin") ;
- laugh_V = reg3V "nauraa" "nauran" "nauroi" ;
- lie_V = reg3V "maata" "makaan" "makasi" ;
- live_V = live_V ;
- play_V = play_V2 ;
- pull_V = dirV2 (regV "vetää") ;
- push_V = dirV2 (regV "työntää") ;
- rub_V = dirV2 (regV "hieroa") ;
- say_V = regV "sanoa" ;
- scratch_V = dirV2 (regV "raapia") ;
- see_V = ( see_V2) ;
- sew_V = regV "kylvää" ;
- sing_V = regV "laulaa" ;
- sit_V = regV "istua" ;
- sleep_V = sleep_V ;
- smell_V = reg2V "haistaa" "haistoi" ;
- spit_V = regV "sylkeä" ;
- split_V = dirV2 (reg2V "halkaista" "halkaisi") ;
- squeeze_V = dirV2 (regV "puristaa") ;
- stab_V = dirV2 (regV "pistää") ;
- stand_V = mkV "seistä" "seisoo" "seison" "seisovat" "seiskää" "seistään"
- "seisoi" "seisoin" "seisoisi" "seissyt" "seisty" "seistyn" ; --- *seisoivät
- suck_V = dirV2 (regV "imeä") ;
- swell_V = mkV "turvota" "turpoaa" "turpoan" "turpoavat" "turvotkaa" "turvotaan"
- "turposi" "turposin" "turpoaisi" "turvonnut" "turvottu" "turvotun" ;
- swim_V = reg3V "uida" "uin" "ui" ;
- think_V = reg3V "ajatella" "ajattelen" "ajatteli" ;
- throw_V = dirV2 (regV "heittää") ;
- tie_V = dirV2 (regV "sitoa") ;
- turn_V = regV "kääntyä" ;
- vomit_V = regV "oksentaa" ;
- walk_V = walk_V ;
- wash_V = dirV2 (regV "pestä") ;
- wipe_V = dirV2 (regV "pyyhkiä") ;
-
-oper
- regA = regADeg ; ----
-
-
-}
diff --git a/examples/bronzeage/SwadeshFre.gf b/examples/bronzeage/SwadeshFre.gf
index 63a418830..bffe9e36e 100644
--- a/examples/bronzeage/SwadeshFre.gf
+++ b/examples/bronzeage/SwadeshFre.gf
@@ -1,259 +1,5 @@
---# -path=.:../french:../common:../abstract:../../prelude:../romance
+--# -path=.:present:prelude
-concrete SwadeshFre of Swadesh = CatFre
- ** open PhonoFre, MorphoFre, LangFre, ParadigmsFre, IrregFre, Prelude in {
+concrete SwadeshFre of Swadesh = CatFre ** SwadeshI with
+ (Lang = LangFre) ;
- lincat
- MassN = N ;
-
- lin
-
- -- Pronouns
-
- i_NP = i_Pron ;
- youSg_NP = youSg_Pron ;
- he_NP = he_Pron ;
- we_NP = we_Pron ;
- youPl_NP = youPl_Pron ;
- they_NP = they_Pron ;
- whoPl_IP = whoPl_IP ;
- whoSg_IP = whoSg_IP ;
- whatPl_IP = whatPl_IP ;
- whatSg_IP = whatSg_IP ;
-
- -- Determiners
-
- this_Det = DetSg (SgQuant this_Quant) NoOrd ;
- that_Det = DetSg (SgQuant that_Quant) NoOrd ;
- all_Det = {
- s = \\g,c => prepCase c ++ genForms "tous" "toutes" ! g ++ "les" ;
- n = Pl
- } ;
- many_Det = many_Det ;
- some_Det = someSg_Det ;
- few_Det = {s = \\g,c => prepCase c ++ "peu" ++ elisDe ; n = Pl} ;
- other_Det = {
- s = \\g,c => prepCase c ++ "d'autres" ; -- de d'autres
- n = Pl
- } ;
-
- left_Ord = mkOrd (regA "gauche") ;
- right_Ord = mkOrd (regA "droite") ;
-
- oper
- mkOrd : A -> Ord ;
- mkOrd x = {s = \\ag => x.s ! Posit ! AF ag.g ag.n; lock_Ord = <> } ;
-
- lin
-
- -- Adverbs
-
- here_Adv = here_Adv;
- there_Adv = there_Adv;
- where_IAdv = where_IAdv;
- when_IAdv = when_IAdv;
- how_IAdv = how_IAdv;
- far_Adv = mkAdv "loin" ;
-
- -- not : Adv ; -- ?
-
- -- Conjunctions
-
- and_Conj = and_Conj ;
-
- -- Prepositions
-
- at_Prep = dative ;
- in_Prep = in_Prep ;
- with_Prep = with_Prep ;
-
- -- Numerals
-
- one_Det = DetSg one_Quant NoOrd ;
- two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
- three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
- four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
- five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
-
- -- Adjectives
-
- bad_A = bad_A ;
- big_A = big_A ;
- black_A = black_A ;
- cold_A = cold_A ;
- correct_A = regA "correct" ;
- dirty_A = dirty_A ;
- dry_A = (mkA "sec" "sèche" "secs" "sèches") ;
- dull_A = regA "émoussé" ;
- full_A = regA "plein" ;
- good_A = good_A ;
- green_A = green_A ;
- heavy_A = regA "lourd" ;
- long_A = long_A ;
- narrow_A = narrow_A ;
- near_A = regA "proche" ;
- new_A = new_A ;
- old_A = old_A ;
- red_A = red_A ;
- rotten_A = regA "pourri" ;
- round_A = regA "rond" ;
- sharp_A = regA "tranchant" ;
- short_A = short_A ;
- small_A = small_A ;
- smooth_A = regA "lisse" ;
- straight_A = regA "droite" ;
- thick_A = thick_A ;
- thin_A = thin_A ;
- warm_A = warm_A ;
- wet_A = regA "mouillé" ;
- white_A = white_A ;
- wide_A = regA "large" ;
- yellow_A = yellow_A ;
-
- -- Nouns
-
- animal_N = regN "animal" ;
- ashes_N = regGenN "cendre" masculine ;
- back_N = regN "dos" ;
- bark_N = regN "écorce" ;
- belly_N = regGenN "ventre" masculine ;
- bird_N = bird_N;
- blood_N = regN "sang" ;
- bone_N = regN "os" ;
- breast_N = regN "sein" ; --- poitrine
- child_N = child_N ;
- cloud_N = regGenN "nuage" masculine ;
- day_N = regN "jour" ;
- dog_N = dog_N ;
- dust_N = regN "poussière" ;
- ear_N = regN "oreille" ;
- earth_N = regN "terre" ;
- egg_N = regN "oeuf" ;
- eye_N = mkN "oeil" "yeux" masculine ;
- fat_N = regN "graisse" ;
- father_N = UseN2 father_N2 ;
- feather_N = regN "plume" ;
- fingernail_N = regGenN "ongle" masculine ;
- fire_N = regN "feu" ;
- fish_N = fish_N ;
- flower_N = regGenN "fleur" feminine ;
- fog_N = regN "brouillard" ;
- foot_N = regN "pied" ;
- forest_N = regGenN "forêt" feminine ;
- fruit_N = fruit_N ;
- grass_N = regN "herbe" ;
- guts_N = regN "entraille" ;
- hair_N = regN "cheveu" ;
- hand_N = regGenN "main" feminine ;
- head_N = regN "tête" ;
- heart_N = regN "coeur" ;
- horn_N = regGenN "corne" masculine ;
- husband_N = regN "mari" ;
- ice_N = regN "glace" ;
- knee_N = regN "genou" ;
- lake_N = lake_N ;
- leaf_N = regN "feuille" ;
- leg_N = regN "jambe" ;
- liver_N = regGenN "foie" masculine ;
- louse_N = regN "pou" ;
- man_N = man_N ;
- meat_N = meat_N ;
- moon_N = moon_N ;
- mother_N = UseN2 mother_N2 ;
- mountain_N = mountain_N ;
- mouth_N = regN "bouche" ;
- name_N = regN "nom" ;
- neck_N = mkN "cou" "cous" masculine ;
- night_N = regGenN "nuit" feminine ;
- nose_N = regN "nez" ;
- person_N = regN "personne" ;
- rain_N = regN "pluie" ;
- river_N = river_N ;
- road_N = regN "route" ;
- root_N = regN "racine" ;
- rope_N = regN "corde" ;
- salt_N = regN "sel" ;
- sand_N = regGenN "sable" masculine ;
- sea_N = sea_N ;
- seed_N = regN "graine" ;
- skin_N = regN "peau" ;
- sky_N = mkN "ciel" "cieux" masculine ;
- smoke_N = regN "fumée" ;
- snake_N = snake_N ;
- snow_N = regN "neige" ;
- star_N = star_N ;
- stick_N = regN "bâton" ;
- stone_N = stone_N ;
- sun_N = sun_N ;
- tail_N = regN "queue" ;
- tongue_N = regN "langue" ;
- tooth_N = regGenN "dent" feminine ;
- tree_N = tree_N ;
- water_N = water_N ;
- wife_N = regN "femme" ;
- wind_N = regN "vent" ;
- wing_N = regN "aile" ;
- woman_N = woman_N ;
- worm_N = regN "ver" ;
- year_N = regN "an" ; --- année
-
- -- Verbs
-
- bite_V = ( mordre_V2) ;
- blow_V = regV "souffler" ;
- breathe_V = dirV2 (regV "respirer") ;
- burn_V = regV "brûler" ;
- come_V = venir_V ;
- count_V = dirV2 (regV "conter") ;
- cut_V = dirV2 (regV "tailler") ;
- die_V = mourir_V ;
- dig_V = regV "creuser" ;
- drink_V = ( boire_V2) ;
- eat_V = dirV2 (regV "manger") ;
- fall_V = regV "tomber" ;
- fear_V = ( craindre_V2) ;
- fight_V = dirV2 (regV "lutter") ;
- float_V = regV "flotter" ;
- flow_V = regV "couler" ;
- fly_V = regV "voler" ;
- freeze_V = reg3V "geler" "gèle" "gèlera" ;
- give_V = dirdirV3 (regV "donner") ;
- hear_V = ( entendre_V2) ;
- hit_V = dirV2 (regV "frapper") ;
- hold_V = ( tenir_V2) ;
- hunt_V = dirV2 (regV "chasser") ;
- kill_V = dirV2 (regV "tuer") ;
- know_V = ( connaître_V2) ;
- laugh_V = rire_V2 ;
- lie_V = reflV étendre_V2 ;
- live_V = vivre_V2 ;
- play_V = regV "jouer" ;
- pull_V = dirV2 (regV "tirer") ;
- push_V = dirV2 (regV "pousser") ;
- rub_V = dirV2 (regV "frotter") ;
- say_V = dire_V2 ;
- scratch_V = dirV2 (regV "gratter") ;
- see_V = ( voir_V2) ;
- sew_V = coudre_V2 ;
- sing_V = regV "chanter" ;
- sit_V = reflV asseoir_V2 ;
- sleep_V = dormir_V2 ;
- smell_V = v2V ( sentir_V2) ;
- spit_V = regV "cracher" ;
- split_V = ( fendre_V2) ;
- squeeze_V = dirV2 (regV "serrer") ;
- stab_V = dirV2 (regV "poignarder") ;
- stand_V = reflV (reg3V "lever" "lève" "lèvera") ;
- suck_V = dirV2 (regV "sucer") ;
- swell_V = regV "gonfler" ;
- swim_V = regV "nager" ;
- think_V = regV "penser" ;
- throw_V = dirV2 (regV "jeter") ;
- tie_V = dirV2 (regV "lier") ;
- turn_V = regV "tourner" ;
- vomit_V = regV "vomir" ;
- walk_V = regV "marcher" ;
- wash_V = dirV2 (regV "laver") ;
- wipe_V = dirV2 (regV "essuyer") ;
-
-}
diff --git a/examples/bronzeage/SwadeshI.gf b/examples/bronzeage/SwadeshI.gf
new file mode 100644
index 000000000..01f1a43c2
--- /dev/null
+++ b/examples/bronzeage/SwadeshI.gf
@@ -0,0 +1,228 @@
+incomplete concrete SwadeshI of Swadesh = open Lang in {
+
+ lincat
+ MassN = Lang.N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+---- few_Det = few_Det ;
+
+ left_Ord = left_Ord ;
+ right_Ord = right_Ord ;
+ -- Adverbs
+ here_Adv = here_Adv;
+ there_Adv = there_Adv;
+ where_IAdv = where_IAdv;
+ when_IAdv = when_IAdv;
+ how_IAdv = how_IAdv;
+ far_Adv = far_Adv ;
+ -- not : Adv ; -- ?
+ -- Conjunctions
+ and_Conj = and_Conj ;
+ -- Prepositions
+ in_Prep = in_Prep ;
+ with_Prep = with_Prep ;
+ -- Numerals
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+ -- Adjectives
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = correct_A ;
+ dirty_A = dirty_A ;
+ dry_A = dry_A ;
+ dull_A = dull_A ;
+ full_A = full_A ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = heavy_A ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = near_A ;
+ new_A = new_A ;
+ old_A = old_A ;
+---- other_A = other_A ;
+ red_A = red_A ;
+ rotten_A = rotten_A ;
+ round_A = round_A ;
+ sharp_A = sharp_A ;
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = smooth_A ;
+ straight_A = straight_A ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = wet_A ;
+ white_A = white_A ;
+ wide_A = wide_A ;
+ yellow_A = yellow_A ;
+ -- Nouns
+ animal_N = animal_N ;
+ ashes_N = ashes_N ;
+ back_N = back_N ;
+ bark_N = bark_N ;
+ belly_N = belly_N ;
+ bird_N = bird_N;
+ blood_N = blood_N ;
+ bone_N = bone_N ;
+ breast_N = breast_N ;
+ child_N = child_N ;
+ cloud_N = cloud_N ;
+ day_N = day_N ;
+ dog_N = dog_N ;
+ dust_N = dust_N ;
+ ear_N = ear_N ;
+ earth_N = earth_N ;
+ egg_N = egg_N ;
+ eye_N = eye_N ;
+ fat_N = fat_N ;
+ feather_N = feather_N ;
+ fingernail_N = fingernail_N ;
+ fire_N = fire_N ;
+ fish_N = fish_N ;
+ flower_N = flower_N ;
+ fog_N = fog_N ;
+ foot_N = foot_N ;
+ forest_N = forest_N ;
+ fruit_N = fruit_N ;
+ grass_N = grass_N ;
+ guts_N = guts_N ;
+ hair_N = hair_N ;
+ hand_N = hand_N ;
+ head_N = head_N ;
+ heart_N = heart_N ;
+ horn_N = horn_N ;
+ husband_N = man_N ; --- aviomies
+ ice_N = ice_N ;
+ knee_N = knee_N ;
+ lake_N = lake_N ;
+ leaf_N = leaf_N ;
+ leg_N = leg_N ;
+ liver_N = liver_N ;
+ louse_N = louse_N ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+---- mother_N = mother_N ;
+ mountain_N = mountain_N ;
+ mouth_N = mouth_N ;
+ name_N = name_N ;
+ neck_N = neck_N ;
+ night_N = night_N ;
+ nose_N = nose_N ;
+ person_N = person_N ;
+ rain_N = rain_N ;
+ river_N = river_N ;
+ road_N = road_N ;
+ root_N = root_N ;
+ rope_N = rope_N ;
+ salt_N = salt_N ;
+ sand_N = sand_N ;
+ sea_N = sea_N ;
+ seed_N = seed_N ;
+ skin_N = skin_N ;
+ sky_N = sky_N ;
+ smoke_N = smoke_N ;
+ snake_N = snake_N ;
+ snow_N = snow_N ;
+ star_N = star_N ;
+ stick_N = stick_N ;
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = tail_N ;
+ tongue_N = tongue_N ;
+ tooth_N = tooth_N ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = wife_N ;
+ wind_N = wind_N ;
+ wing_N = wing_N ;
+ woman_N = woman_N ;
+ worm_N = worm_N ;
+ year_N = year_N ;
+ -- Verbs
+ bite_V2 = bite_V2 ;
+ blow_V = blow_V ;
+ breathe_V = breathe_V ;
+ burn_V = burn_V ;
+ come_V = come_V ;
+ count_V2 = count_V2 ;
+ cut_V2 = cut_V2 ;
+ die_V = die_V ;
+ dig_V = dig_V ;
+ drink_V2 = ( drink_V2) ;
+ eat_V2 = ( eat_V2) ;
+ fall_V = fall_V ;
+ fear_V2 = fear_V2 ;
+ fight_V2 = fight_V2 ;
+ float_V = float_V ;
+ flow_V = flow_V ;
+ fly_V = fly_V ;
+ freeze_V = freeze_V ;
+ give_V3 = give_V3 ;
+ hear_V2 = hear_V2 ;
+ hit_V2 = hit_V2 ;
+ hold_V2 = hold_V2 ;
+ hunt_V2 = hunt_V2 ;
+ kill_V2 = kill_V2 ;
+ know_V2 = know_V2 ;
+ laugh_V = laugh_V ;
+ lie_V = lie_V ;
+ live_V = live_V ;
+ play_V = play_V2 ;
+ pull_V2 = pull_V2 ;
+ push_V2 = push_V2 ;
+ rub_V2 = rub_V2 ;
+ say_V = say_VS ;
+ scratch_V2 = scratch_V2 ;
+ see_V2 = ( see_V2) ;
+ sew_V = sew_V ;
+ sing_V = sing_V ;
+ sit_V = sit_V ;
+ sleep_V = sleep_V ;
+ smell_V = smell_V ;
+ spit_V = spit_V ;
+ split_V2 = split_V2 ;
+ squeeze_V2 = squeeze_V2 ;
+ stab_V2 = stab_V2 ;
+ stand_V = stand_V ;
+ suck_V2 = suck_V2 ;
+ swell_V = swell_V ;
+ swim_V = swim_V ;
+ think_V = think_V ;
+ throw_V2 = throw_V2 ;
+ tie_V2 = tie_V2 ;
+ turn_V = turn_V ;
+ vomit_V = vomit_V ;
+ walk_V = walk_V ;
+ wash_V2 = wash_V2 ;
+ wipe_V2 = wipe_V2 ;
+
+
+
+}
diff --git a/examples/bronzeage/SwadeshIta.gf b/examples/bronzeage/SwadeshIta.gf
index e04eec40b..b84295867 100644
--- a/examples/bronzeage/SwadeshIta.gf
+++ b/examples/bronzeage/SwadeshIta.gf
@@ -1,258 +1,5 @@
---# -path=.:../italian:../common:../abstract:../../prelude:../romance
+--# -path=.:present:prelude
-concrete SwadeshIta of Swadesh = CatIta
- ** open PhonoIta, MorphoIta, LangIta, ParadigmsIta, BeschIta, Prelude in {
+concrete SwadeshIta of Swadesh = CatIta ** SwadeshI with
+ (Lang = LangIta) ;
- lincat
- MassN = N ;
-
- lin
- -- Pronouns
-
- i_NP = i_Pron ;
- youSg_NP = youSg_Pron ;
- he_NP = he_Pron ;
- we_NP = we_Pron ;
- youPl_NP = youPl_Pron ;
- they_NP = they_Pron ;
- whoPl_IP = whoPl_IP ;
- whoSg_IP = whoSg_IP ;
- whatPl_IP = whatPl_IP ;
- whatSg_IP = whatSg_IP ;
-
- -- Determiners
-
- this_Det = DetSg (SgQuant this_Quant) NoOrd ;
- that_Det = DetSg (SgQuant that_Quant) NoOrd ;
- all_Det = {
- s = \\g,c => prepCase c ++ genForms ["tutti i"] ["tutte le"] ! g ;
- n = Pl
- } ;
- many_Det = many_Det ;
- some_Det = someSg_Det ;
- few_Det = {s = \\g,c => prepCase c ++ genForms "pochi" "poche" ! g ; n = Pl} ;
- other_Det = {
- s = \\g,c => prepCase c ++ genForms "altri" "altre" ! g ;
- n = Pl
- } ;
-
- left_Ord = mkOrd (regA "sinistro") ;
- right_Ord = mkOrd (regA "destro") ;
-
- oper
- mkOrd : A -> Ord ;
- mkOrd x = {s = \\ag => x.s ! Posit ! AF ag.g ag.n; lock_Ord = <> } ;
-
- lin
-
- -- Adverbs
-
- here_Adv = here_Adv;
- there_Adv = there_Adv;
- where_IAdv = where_IAdv;
- when_IAdv = when_IAdv;
- how_IAdv = how_IAdv;
- far_Adv = mkAdv "lontano" ;
-
- -- not : Adv ; -- ?
-
- -- Conjunctions
-
- and_Conj = and_Conj ;
-
- -- Prepositions
-
- at_Prep = dative ;
- in_Prep = in_Prep ;
- with_Prep = with_Prep ;
-
- -- Numerals
-
- one_Det = DetSg one_Quant NoOrd ;
- two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
- three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
- four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
- five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
-
- -- Adjectives
-
- bad_A = bad_A ;
- big_A = big_A ;
- black_A = black_A ;
- cold_A = cold_A ;
- correct_A = regA "corretto" ;
- dirty_A = dirty_A ;
- dry_A = regA "secco" ;
- dull_A = regA "noioso" ;
- full_A = regA "pieno" ;
- good_A = good_A ;
- green_A = green_A ;
- heavy_A = regA "pesante" ;
- long_A = long_A ;
- narrow_A = narrow_A ;
- near_A = regA "vicino" ;
- new_A = new_A ;
- old_A = old_A ;
- red_A = red_A ;
- rotten_A = regA "marcio" ;
- round_A = regA "rotondo" ;
- sharp_A = regA "aguzzo" ;
- short_A = short_A ;
- small_A = small_A ;
- smooth_A = regA "liscio" ;
- straight_A = regA "diretto" ;
- thick_A = thick_A ;
- thin_A = thin_A ;
- warm_A = warm_A ;
- wet_A = regA "bagnato" ;
- white_A = white_A ;
- wide_A = regA "largo" ;
- yellow_A = yellow_A ;
-
- -- Nouns
-
- animal_N = regN "animale" ;
- ashes_N = regN "cenere" ;
- back_N = regN "schiena" ;
- bark_N = regN "corteccia" ;
- belly_N = regN "pancia" ;
- bird_N = bird_N;
- blood_N = regN "sangue" ;
- bone_N = regN "osso" ;
- breast_N = regN "seno" ;
- child_N = child_N ;
- cloud_N = regN "nuvola" ;
- day_N = regN "giorno" ;
- dog_N = dog_N ;
- dust_N = regN "polvere" ;
- ear_N = regN "orecchio" ;
- earth_N = regN "terra" ;
- egg_N = mkN "uovo" "uova" masculine ; -- fem in Pl
- eye_N = regN "occhio" ;
- fat_N = regN "grasso" ;
- father_N = UseN2 father_N2 ;
- feather_N = regN "piuma" ;
- fingernail_N = regN "unghia" ;
- fire_N = regN "fuoco" ;
- fish_N = fish_N ;
- flower_N = regN "fiore" ;
- fog_N = regN "nebbia" ;
- foot_N = regN "piede" ;
- forest_N = regN "bosco" ;
- fruit_N = fruit_N ;
- grass_N = regN "erba" ;
- guts_N = regN "intestino" ;
- hair_N = regN "capello" ;
- hand_N = femN (regN "mano") ;
- head_N = regN "testa" ;
- heart_N = regN "cuore" ;
- horn_N = regN "corno" ;
- husband_N = regN "marito" ;
- ice_N = regN "ghiaccio" ;
- knee_N = regN "ginocchio" ;
- lake_N = lake_N ;
- leaf_N = regN "foglia" ;
- leg_N = regN "gamba" ;
- liver_N = regN "fegato" ;
- louse_N = regN "pidocchio" ;
- man_N = man_N ;
- meat_N = meat_N ;
- moon_N = moon_N ;
- mother_N = UseN2 mother_N2 ;
- mountain_N = mountain_N ;
- mouth_N = regN "bocca" ;
- name_N = regN "nome" ;
- neck_N = regN "collo" ;
- night_N = femN (regN "notte") ;
- nose_N = regN "naso" ;
- person_N = regN "persona" ;
- rain_N = regN "pioggia" ;
- river_N = river_N ;
- road_N = regN "strada" ;
- root_N = femN (regN "radice") ;
- rope_N = regN "corda" ;
- salt_N = regN "sale" ;
- sand_N = regN "sabbia" ;
- sea_N = sea_N ;
- seed_N = regN "seme" ;
- skin_N = femN (regN "pelle") ;
- sky_N = regN "cielo" ;
- smoke_N = regN "fumo" ;
- snake_N = snake_N ;
- snow_N = femN (regN "neve") ;
- star_N = star_N ;
- stick_N = regN "bastone" ;
- stone_N = stone_N ;
- sun_N = sun_N ;
- tail_N = regN "coda" ;
- tongue_N = regN "lingua" ;
- tooth_N = regN "dente" ;
- tree_N = tree_N ;
- water_N = water_N ;
- wife_N = regN "donna" ;
- wind_N = regN "vento" ;
- wing_N = regN "ala" ;
- woman_N = woman_N ;
- worm_N = regN "verme" ;
- year_N = regN "anno" ;
-
- -- Verbs
-
- bite_V = dirV2 (verboV (esplodere_51 "mordere")) ;
- blow_V = regV "soffiare" ;
- breathe_V = dirV2 (regV "respirare") ;
- burn_V = regV "bruciare" ;
- come_V = come_V ;
- count_V = dirV2 (regV "contare") ;
- cut_V = dirV2 (regV "tagliare") ;
- die_V = die_V ;
- dig_V = regV "scavare" ;
- drink_V = dirV2 (drink_V2) ;
- eat_V = dirV2 (regV "mangiare") ;
- fall_V = essereV (verboV (cadere_28 "cadere")) ;
- fear_V = dirV2 (fear_VS) ;
- fight_V = dirV2 (regV "lottare") ;
- float_V = regV "galleggiare" ;
- flow_V = verboV (finire_100 "fluire") ;
- fly_V = regV "volare" ;
- freeze_V = regV "gelare" ;
- give_V = dirdirV3 (verboV (dare_15 "dare")) ;
- hear_V = dirV2 (hear_V2) ;
- hit_V = dirV2 (regV "colpire") ;
- hold_V = dirV2 (verboV (venire_110 "tenire")) ;
- hunt_V = dirV2 (regV "cacciare") ;
- kill_V = dirV2 (verboV (ridere_74 "uccidere")) ;
- know_V = dirV2 (know_V2) ;
- laugh_V = verboV (ridere_74 "ridere") ;
- lie_V = verboV (piacere_64 "giacere") ;
- live_V = live_V ;
- play_V = regV "giocare" ;
- pull_V = dirV2 (regV "tirare") ;
- push_V = dirV2 (verboV (cingere_31 "spingere")) ;
- rub_V = dirV2 (regV "strofinare") ;
- say_V = say_VS ;
- scratch_V = dirV2 (regV "graffiare") ;
- see_V = dirV2 (see_V2) ;
- sew_V = verboV (cucire_103 "cucire") ;
- sing_V = regV "cantare" ;
- sit_V = reflV (verboV (sedere_84 "sedere")) ;
- sleep_V = sleep_V ;
- smell_V = verboV (sentire_99 "sentire") ;
- spit_V = regV "sputare" ;
- split_V = dirV2 (verboV (ridere_74 "dividere")) ;
- squeeze_V = dirV2 (verboV (temere_20 "spremere")) ;
- stab_V = dirV2 (regV "pugnalare") ;
- stand_V = verboV (stare_16 "stare") ; ---- in piedi
- suck_V = dirV2 (regV "succhiare") ;
- swell_V = regV "gonfiare" ;
- swim_V = regV "nuotare" ;
- think_V = regV "pensare" ;
- throw_V = dirV2 (regV "gettare") ;
- tie_V = dirV2 (regV "legare") ;
- turn_V = regV "tornare" ;
- vomit_V = regV "vomitare" ;
- walk_V = regV "camminare" ;
- wash_V = dirV2 (regV "lavare") ;
- wipe_V = dirV2 (regV "asciugare") ;
-
-}
diff --git a/examples/bronzeage/SwadeshNor.gf b/examples/bronzeage/SwadeshNor.gf
index 6b160146c..5d392462d 100644
--- a/examples/bronzeage/SwadeshNor.gf
+++ b/examples/bronzeage/SwadeshNor.gf
@@ -1,252 +1,5 @@
---# -path=.:../norwegian:../common:../abstract:../scandinavian:../../prelude
+--# -path=.:present:prelude
-concrete SwadeshNor of Swadesh = CatNor
- ** open MorphoNor, LangNor, ParadigmsNor, IrregNor, Prelude in {
+concrete SwadeshNor of Swadesh = CatNor ** SwadeshI with
+ (Lang = LangNor) ;
- lincat
- MassN = N ;
-
- lin
-
- -- Pronouns
-
- i_NP = i_Pron ;
- youSg_NP = youSg_Pron ;
- he_NP = he_Pron ;
- we_NP = we_Pron ;
- youPl_NP = youPl_Pron ;
- they_NP = they_Pron ;
- whoPl_IP = whoPl_IP ;
- whoSg_IP = whoSg_IP ;
- whatPl_IP = whatPl_IP ;
- whatSg_IP = whatSg_IP ;
-
- -- Determiners
-
- this_Det = DetSg (SgQuant this_Quant) NoOrd ;
- that_Det = DetSg (SgQuant that_Quant) NoOrd ;
- all_Det = {s = \\_,_ => "alle" ; n = Pl ; det = DDef Indef} ;
- many_Det = many_Det ;
- some_Det = someSg_Det ;
- few_Det = {s = \\_,_ => "få" ; n = Pl ; det = DDef Indef} ;
- other_Det = {s = \\_,_ => "andre" ; n = Pl ; det = DDef Indef} ;
-
- left_Ord = {s = "venstre" ; isDet = True} ;
- right_Ord = {s = "høyre" ; isDet = True} ;
-
- -- Adverbs
-
- here_Adv = here_Adv ;
- there_Adv = there_Adv ;
- where_IAdv = where_IAdv ;
- when_IAdv = when_IAdv ;
- how_IAdv = how_IAdv ;
-
- far_Adv = mkAdv "fjern" ;
-
- -- not : Adv ; -- ?
-
- -- Conjunctions
-
- and_Conj = and_Conj ;
-
- -- Prepositions
-
- at_Prep = ss "ved" ;
- in_Prep = ss "i" ;
- with_Prep = ss "med" ;
-
- -- Numerals
-
- one_Det = DetSg one_Quant NoOrd ;
- two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
- three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
- four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
- five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
-
- -- Adjectives
-
- bad_A = bad_A ;
- big_A = big_A ;
- black_A = black_A ;
- cold_A = cold_A ;
- correct_A = regA "riktig" ;
- dirty_A = dirty_A ;
- dry_A = mk2A "tørr" "tørt" ;
- dull_A = regA "sløv" ;
- full_A = regA "full" ;
- good_A = good_A ;
- green_A = green_A ;
- heavy_A = irregADeg "tung" "tyngre" "tyngst" ;
- long_A = long_A ;
- narrow_A = narrow_A ;
- near_A = mkADeg "nære" "nære" "nære" "nærmere" "nærmest" ;
- new_A = new_A ;
- old_A = old_A ;
- red_A = red_A ;
- rotten_A = mk3ADeg "råtten" "råttent" "råtne" ;
- round_A = regA "rund" ;
- sharp_A = mk2A "kvass" "kvast" ;
- short_A = short_A ;
- small_A = small_A ;
- smooth_A = mk2A "slett" "slett" ;
- straight_A = regA "rak" ;
- thick_A = thick_A ;
- thin_A = thin_A ;
- warm_A = warm_A ;
- wet_A = regA "våt" ;
- white_A = white_A ;
- wide_A = regA "bred" ;
- yellow_A = yellow_A ;
-
-
- -- Nouns
-
- animal_N = mk2N "dyr" "dyret" ;
- ashes_N = mk2N "aske" "aska" ;
- back_N = mk2N "rygg" "ryggen" ;
- bark_N = mk2N "bark" "barken" ;
- belly_N = mk2N "mage" "magen" ;
- bird_N = bird_N ;
- blood_N = mk2N "blod" "blodet" ;
- bone_N = mk2N "bein" "beinet" ;
- breast_N = mk2N "bryst" "brystet" ;
- child_N = child_N ;
- cloud_N = mk2N "sky" "skya" ;
- day_N = mk2N "dag" "dagen" ;
- dog_N = dog_N ;
- dust_N = mk2N "støv" "støvet" ;
- ear_N = mk2N "øre" "øret" ;
- earth_N = mk2N "jord" "jorda" ;
- egg_N = mk2N "egg" "egget" ;
- eye_N = mkN "øye" "øyet" "øyne" "øynene" ;
- fat_N = mk2N "fett" "fettet" ;
- father_N = mkN "far" "faren" "fedre" "fedrene" ;
--- father_N = UseN2 father_N2 ;
- feather_N = mk2N "fjør" "fjøra" ;
- fingernail_N = mk2N "negl" "neglen" ;
- fire_N = mk2N "ild" "ilden" ;
- fish_N = fish_N ;
- flower_N = mk2N "blomst" "blomsten" ;
- fog_N = mk2N "tåke" "tåka" ;
- foot_N = mk2N "fot" "føtter" ;
- forest_N = mk2N "skog" "skogen" ;
- fruit_N = fruit_N ;
- grass_N = mk2N "gras" "graset" ;
- guts_N = mk2N "tarm" "tarmen" ; ---- involler
- hair_N = mk2N "hår" "håret" ;
- hand_N = mk2N "hånd" "hånden" ;
-
- head_N = mk2N "hode" "hodet" ;
- heart_N = mk2N "hjerte" "hjertet" ;
- horn_N = mk2N "horn" "hornet" ;
- husband_N = mkN "ektemann" "ektemannen" "ektemenn" "ektemennen" ;
- ice_N = mk2N "is" "isen" ;
- knee_N = mkN "kne" "kneet" "knær" "knæne" ;
- lake_N = lake_N ;
- leaf_N = mk2N "løv" "løvet" ;
- leg_N = mk2N "bein" "beinet" ;
- liver_N = mkN "lever" "leveren" "levrer" "levrene" ;
- louse_N = mk2N "lus" "lusa" ;
- man_N = man_N ;
- meat_N = meat_N ;
- moon_N = moon_N ;
- mother_N = mkN "mor" "moren" "mødre" "mødrene" ;
--- mother_N = UseN2 mother_N2 ;
- mountain_N = mountain_N ;
- mouth_N = mk2N "munn" "munnen" ;
- name_N = mk2N "navn" "navnet" ;
- neck_N = mk2N "nakke" "nakken" ;
- night_N = mkN "natt" "natta" "netter" "nettene" ;
- nose_N = mk2N "nese" "nesen" ;
- person_N = mk2N "person" "personen" ;
- rain_N = mk2N "regn" "regnet" ;
- river_N = river_N ;
- road_N = mk2N "vei" "veien" ;
- root_N = mkN "rot" "rota" "røtter" "røttene" ;
- rope_N = mk2N "tau" "tauet" ;
- salt_N = mk2N "salt" "saltet" ;
- sand_N = mk2N "sand" "sanden" ;
- sea_N = sea_N ;
- seed_N = mk2N "frø" "frøet" ;
- skin_N = mk2N "skinn" "skinnet" ;
- sky_N = mkN "himmel" "himmelen" "himler" "himlene" ;
- smoke_N = mk2N "røyk" "røyken" ;
- snake_N = snake_N ;
- snow_N = mk2N "snø" "snøen" ;
- star_N = star_N ;
- stick_N = mk2N "pinne" "pinnen" ;
- stone_N = stone_N ;
- sun_N = sun_N ;
- tail_N = mk2N "hale" "halen" ;
- tongue_N = mk2N "tunge" "tunga" ;
- tooth_N = mkN "tann" "tanna" "tenner" "tennene" ;
- tree_N = tree_N ;
- water_N = water_N ;
- wife_N = mk2N "kone" "kona" ;
- wind_N = mk2N "vind" "vinden" ;
- wing_N = mk2N "vinge" "vingen" ;
- woman_N = woman_N ;
- worm_N = mk2N "mark" "marken" ;
- year_N = mk2N "år" "året" ;
-
- -- Verbs
-
- bite_V = dirV2 (IrregNor.bite_V) ;
- blow_V = mk2V "blåse" "blåste" ;
- breathe_V = dirV2 (regV "puste") ;
- burn_V = brenne_V ;
- come_V = komme_V ;
- count_V = dirV2 (regV "regne") ;
- cut_V = dirV2 (skjære_V) ;
- die_V = dø_V ;
- dig_V = mk2V "grave" "gravde" ;
- drink_V = dirV2 (drikke_V) ;
- eat_V = dirV2 (mk2V "spise" "spiste") ;
- fall_V = falle_V ;
- fear_V = dirV2 (regV "frykte") ;
- fight_V = dirV2 (slåss_V) ;
- float_V = flyte_V ;
- flow_V = renne_V ;
- fly_V = fly_V ;
- freeze_V = fryse_V ;
- give_V = dirdirV3 gi_V ;
- hear_V = dirV2 (mk2V "høre" "hørde") ;
- hit_V = dirV2 (slå_V) ;
- hold_V = dirV2 (holde_V) ;
- hunt_V = dirV2 (regV "jakte") ;
- kill_V = dirV2 (mk2V "drepe" "drepte") ;
- know_V = dirV2 (vite_V) ;
- laugh_V = mkV "le" "ler" "les" "lo" "ledd" "le" ;
- lie_V = ligge_V ;
- live_V = mk2V "leve" "levde" ;
- play_V = mk2V "leke" "lekte" ;
- pull_V = dirV2 (dra_V) ;
- push_V = dirV2 (irregV "skyve" "skjøv" "skjøvet") ;
- rub_V = dirV2 (gni_V) ;
- say_V = si_V ;
- scratch_V = dirV2 (regV "klø") ;
- see_V = dirV2 (se_V) ;
- sew_V = mk2V "sy" "sydde" ;
- sing_V = synge_V ;
- sit_V = sitte_V ;
- sleep_V = sove_V ;
- smell_V = regV "lukte" ;
- spit_V = regV "spytte" ;
- split_V = dirV2 (mk2V "kløyve" "kløyvde") ;
- squeeze_V = dirV2 (mk2V "klemme" "klemte") ;
- stab_V = dirV2 (stikke_V) ;
- stand_V = stå_V ;
- suck_V = dirV2 (suge_V) ;
- swell_V = partV (regV "hovne") "opp" ;
- swim_V = regV "simme" ;
- think_V = mk2V "tenke" "tenkte" ;
- throw_V = dirV2 (regV "kaste") ;
- tie_V = dirV2 (regV "knytte") ;
- turn_V = mk2V "vende" "vendte" ;
- vomit_V = partV (regV "kaste") "opp" ;
- walk_V = gå_V ;
- wash_V = dirV2 (regV "vaske") ;
- wipe_V = dirV2 (regV "tørke") ;
-
-}
diff --git a/examples/bronzeage/SwadeshSpa.gf b/examples/bronzeage/SwadeshSpa.gf
index 9ada657f7..48de83341 100644
--- a/examples/bronzeage/SwadeshSpa.gf
+++ b/examples/bronzeage/SwadeshSpa.gf
@@ -1,262 +1,5 @@
---# -path=.:../spanish:../common:../abstract:../../prelude:../romance
+--# -path=.:present:prelude
-concrete SwadeshSpa of Swadesh = CatSpa
- ** open PhonoSpa, MorphoSpa, LangSpa, ParadigmsSpa, BeschSpa, Prelude in {
+concrete SwadeshSpa of Swadesh = CatSpa ** SwadeshI with
+ (Lang = LangSpa) ;
--- words contributed by Ana Bove, May 2005
-
- lincat
- MassN = N ;
-
- lin
-
- -- Pronouns
-
- i_NP = i_Pron ;
- youSg_NP = youSg_Pron ;
- he_NP = he_Pron ;
- we_NP = we_Pron ;
- youPl_NP = youPl_Pron ;
- they_NP = they_Pron ;
- whoPl_IP = whoPl_IP ;
- whoSg_IP = whoSg_IP ;
- whatPl_IP = whatPl_IP ;
- whatSg_IP = whatSg_IP ;
-
- -- Determiners
-
- this_Det = DetSg (SgQuant this_Quant) NoOrd ;
- that_Det = DetSg (SgQuant that_Quant) NoOrd ;
- all_Det = {
- s = \\g,c => prepCase c ++ genForms ["todos los"] ["todas las"] ! g ;
- n = Pl
- } ;
- many_Det = many_Det ;
- some_Det = someSg_Det ;
- few_Det = {s = \\g,c => prepCase c ++ genForms "pocos" "pocas" ! g ; n = Pl} ;
- other_Det = {
- s = \\g,c => prepCase c ++ genForms "otros" "otras" ! g ;
- n = Pl
- } ;
-
- left_Ord = mkOrd (regA "izquierda") ;
- right_Ord = mkOrd (regA "derecha") ;
-
- oper
- mkOrd : A -> Ord ;
- mkOrd x = {s = \\ag => x.s ! Posit ! AF ag.g ag.n; lock_Ord = <> } ;
-
- lin
-
- -- Adverbs
-
- here_Adv = here_Adv;
- there_Adv = there_Adv;
- where_IAdv = where_IAdv;
- when_IAdv = when_IAdv;
- how_IAdv = how_IAdv;
- far_Adv = mkAdv "lejos" ; ----?
-
- -- not : Adv ; -- ?
-
- -- Conjunctions
-
- and_Conj = and_Conj ;
-
- -- Prepositions
-
- at_Prep = dative ;
- in_Prep = in_Prep ;
- with_Prep = with_Prep ;
-
- -- Numerals
-
- one_Det = DetSg one_Quant NoOrd ;
- two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
- three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
- four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
- five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
-
-
- -- Adjectives
-
- bad_A = bad_A ;
- big_A = big_A ;
- black_A = black_A ;
- cold_A = cold_A ;
- correct_A = regA "correcto" ;
- dirty_A = dirty_A ;
- dry_A = regA "seco" ;
- dull_A = regA "desafilado" ;
- full_A = regA "lleno" ;
- good_A = good_A ;
- green_A = green_A ;
- heavy_A = regA "pesado" ;
- long_A = long_A ;
- narrow_A = narrow_A ;
- near_A = regA "cerca" ;
- new_A = new_A ;
- old_A = old_A ;
- red_A = red_A ;
- rotten_A = regA "podrido" ;
- round_A = regA "redondo" ;
- sharp_A = regA "filoso" ; -- afilado, puntiagudo
- short_A = short_A ;
- small_A = small_A ;
- smooth_A = regA "liso" ; -- suave
- straight_A = regA "directo" ;
- thick_A = thick_A ;
- thin_A = thin_A ;
- warm_A = warm_A ;
- wet_A = regA "mojado" ;
- white_A = white_A ;
- wide_A = regA "ancho" ; -- extenso
- yellow_A = yellow_A ;
-
- -- Nouns
-
- animal_N = regN "animal" ; -- masc (sometimes fem when adj)
- ashes_N = regN "ceniza" ;
- back_N = regN "espalda" ;
- bark_N = regN "corteza" ;
- belly_N = regN "panza" ; -- barriga
- bird_N = bird_N;
- blood_N = femN (regN "sangre") ;
- bone_N = regN "hueso" ;
- breast_N = regN "seno" ; -- pecho
- child_N = child_N ;
- cloud_N = femN (regN "nube") ;
- day_N = mascN (regN "día") ;
- dog_N = dog_N ;
- dust_N = regN "polvo" ;
- ear_N = regN "oreja" ;
- earth_N = regN "tierra" ;
- egg_N = regN "huevo" ;
- eye_N = regN "ojo" ;
- fat_N = regN "grasa" ;
- father_N = UseN2 father_N2 ;
- feather_N = regN "pluma" ;
- fingernail_N = regN "uña" ;
- fire_N = regN "fuego" ;
- fish_N = fish_N ;
- flower_N = femN (regN "flor") ;
- fog_N = regN "niebla" ;
- foot_N = regN "pie" ;
- forest_N = regN "bosque" ;
- fruit_N = fruit_N ;
- grass_N = regN "pasto" ; -- hierba, césped (masc)
- guts_N = regN "tripa" ; -- gut=intestino ---- pl.t. tripas
- hair_N = regN "cabello" ; -- pelo
- hand_N = femN (regN "mano") ;
- head_N = regN "cabeza" ;
- heart_N = mkN "corazón" "corazones" masculine ;
- horn_N = regN "cuerno" ;
- husband_N = regN "marido" ; -- esposo
- ice_N = regN "hielo" ;
- knee_N = regN "rodilla" ;
- lake_N = lake_N ;
- leaf_N = regN "hoja" ;
- leg_N = regN "pierna" ;
- liver_N = regN "hígado" ;
- louse_N = regN "piojo" ;
- man_N = man_N ;
- meat_N = meat_N ;
- moon_N = moon_N ;
- mother_N = UseN2 mother_N2 ;
- mountain_N = mountain_N ;
- mouth_N = regN "boca" ;
- name_N = regN "nombre" ;
- neck_N = regN "cuello" ;
- night_N = femN (regN "noche") ;
- nose_N = femN (regN "nariz") ;
- person_N = regN "persona" ;
- rain_N = regN "lluvia" ;
- river_N = river_N ;
- road_N = femN (regN "calle") ; -- camino
- root_N = femN (regN "raíz") ;
- rope_N = regN "cuerda" ;
- salt_N = femN (regN "sal") ;
- sand_N = regN "arena" ;
- sea_N = sea_N ;
- seed_N = regN "semilla" ;
- skin_N = femN (regN "piel") ; -- fem
- sky_N = regN "cielo" ;
- smoke_N = regN "humo" ;
- snake_N = snake_N ;
- snow_N = femN (regN "nieve") ; -- fem
- star_N = star_N ;
- stick_N = mkN "bastón" "bastones" masculine ; -- palo
- stone_N = stone_N ;
- sun_N = sun_N ;
- tail_N = regN "cola" ;
- tongue_N = regN "lengua" ;
- tooth_N = regN "diente" ;
- tree_N = tree_N ;
- water_N = water_N ;
- wife_N = regN "esposa" ;
- wind_N = regN "viento" ;
- wing_N = regN "ala" ;
- woman_N = woman_N ;
- worm_N = regN "gusano" ; -- lombriz (fem)
- year_N = regN "año" ;
-
- -- Verbs
-
- bite_V = dirV2 (verboV (morder_50b "morder")) ;
- blow_V = regV "soplar" ;
- breathe_V = dirV2 (regV "respirar") ;
- burn_V = regV "quemar" ;
- come_V = come_V ;
- count_V = dirV2 (verboV (contar_38b "contar")) ;
- cut_V = dirV2 (regV "cortar") ;
- die_V = die_V ;
- dig_V = regV "escarbar" ;
- drink_V = dirV2 (regV "tomar") ;
- eat_V = dirV2 (regV "comer") ;
- fall_V = verboV (caer_20 "caer") ;
- fear_V = dirV2 (fear_VS) ;
- fight_V = dirV2 (regV "pelear") ;
- float_V = regV "flotar" ;
- flow_V = verboV (influir_45 "fluir") ; -- circular
- fly_V = regV "volar" ;
- freeze_V = regV "congelar" ;
- give_V = dirdirV3 (verboV (dar_27 "dar")) ;
- hear_V = dirV2 (hear_V2) ;
- hit_V = dirV2 (regV "golpear") ;
- hold_V = dirV2 (verboV (tener_4 "tener")) ;
- hunt_V = dirV2 (regV "cazar") ;
- kill_V = dirV2 (regV "matar") ;
- know_V = dirV2 (know_V2) ;
- laugh_V = regV "reir" ; ----V reír_67
- lie_V = reflV (regV "acostar") ; -- "acostarse"
- live_V = live_V ;
- play_V = regV "jugar" ;
- pull_V = dirV2 (regV "tirar") ;
- push_V = dirV2 (regV "empujar") ;
- rub_V = dirV2 (regV "resfregar") ;
- say_V = say_VS ;
- scratch_V = dirV2 (regV "rascar") ;
- see_V = dirV2 (see_V2) ;
- sew_V = regV "coser" ;
- sing_V = regV "cantar" ;
- sit_V = reflV (regV "sentar") ;
- sleep_V = sleep_V ;
- smell_V = verboV (oler_52 "oler") ;
- spit_V = regV "escupir" ;
- split_V = dirV2 (regV "separar") ; -- dividir,) ;
- squeeze_V = dirV2 (regV "exprimir") ;
- stab_V = dirV2 (regV "apuñalar") ;
- stand_V = verboV (estar_2 "estar") ; ---- "estar de pie" ;
- suck_V = dirV2 (regV "chupar") ;
- swell_V = regV "tragar" ;
- swim_V = regV "nadar" ;
- think_V = regV "pensar" ;
- throw_V = dirV2 (regV "tirar") ;
- tie_V = dirV2 (regV "atar") ;
- turn_V = regV "doblar" ;
- vomit_V = regV "vomitar" ;
- walk_V = regV "caminar" ;
- wash_V = dirV2 (regV "lavar") ;
- wipe_V = dirV2 (regV "secar") ;
-
-}
diff --git a/examples/bronzeage/SwadeshSwe.gf b/examples/bronzeage/SwadeshSwe.gf
index 0bcaa9879..2a82b2bc4 100644
--- a/examples/bronzeage/SwadeshSwe.gf
+++ b/examples/bronzeage/SwadeshSwe.gf
@@ -1,252 +1,5 @@
--# -path=.:present:prelude
-concrete SwadeshSwe of Swadesh = CatSwe
- ** open MorphoSwe, LangSwe, ParadigmsSwe, IrregSwe, Prelude in {
+concrete SwadeshSwe of Swadesh = CatSwe ** SwadeshI with
+ (Lang = LangSwe) ;
- lincat
- MassN = N ;
-
- lin
-
- -- Pronouns
-
- i_NP = i_Pron ;
- youSg_NP = youSg_Pron ;
- he_NP = he_Pron ;
- we_NP = we_Pron ;
- youPl_NP = youPl_Pron ;
- they_NP = they_Pron ;
- whoPl_IP = whoPl_IP ;
- whoSg_IP = whoSg_IP ;
- whatPl_IP = whatPl_IP ;
- whatSg_IP = whatSg_IP ;
-
- -- Determiners
-
- this_Det = DetSg (SgQuant this_Quant) NoOrd ;
- that_Det = DetSg (SgQuant that_Quant) NoOrd ;
- all_Det = {s = \\_,_ => "alla" ; n = Pl ; det = DDef Indef} ;
- many_Det = many_Det ;
- some_Det = someSg_Det ;
- few_Det = {s = \\_,_ => "få" ; n = Pl ; det = DDef Indef} ;
- other_Det = {s = \\_,_ => "andra" ; n = Pl ; det = DDef Indef} ;
-
- left_Ord = {s = "vänstra" ; isDet = True} ;
- right_Ord = {s = "högra" ; isDet = True} ;
-
- -- Adverbs
-
- here_Adv = here_Adv ;
- there_Adv = there_Adv ;
- where_IAdv = where_IAdv ;
- when_IAdv = when_IAdv ;
- how_IAdv = how_IAdv ;
- far_Adv = mkAdv "långt" ;
-
- -- not : Adv ; -- ?
-
- -- Conjunctions
-
- and_Conj = and_Conj ;
-
- -- Prepositions
-
- at_Prep = ss "vid" ;
- in_Prep = ss "i" ;
- with_Prep = ss "med" ;
-
- -- Numerals
-
- one_Det = DetSg one_Quant NoOrd ;
- two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
- three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
- four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
- five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
-
- -- Adjectives
-
- bad_A = bad_A ;
- big_A = big_A ;
- black_A = black_A ;
- cold_A = cold_A ;
- correct_A = regA "riktig" ;
- dirty_A = dirty_A ;
- dry_A = regA "torr" ;
- dull_A = mk2A "slö" "slött";
- full_A = regA "full" ;
- good_A = good_A ;
- green_A = green_A ;
- heavy_A = irregA "tung" "tyngre" "tyngst" ;
- long_A = long_A ;
- narrow_A = narrow_A ;
- near_A = mkA "nära" "nära" "nära" "nära"
- "närmare" "närmast" "närmaste" ;
- new_A = new_A ;
- old_A = old_A ;
- red_A = red_A ;
- rotten_A = mk3A "rutten" "ruttet" "ruttna" ;
- round_A = regA "rund" ;
- sharp_A = regA "vass" ;
- short_A = short_A ;
- small_A = small_A ;
- smooth_A = regA "slät" ;
- straight_A = regA "rak" ;
- thick_A = thick_A ;
- thin_A = thin_A ;
- warm_A = warm_A ;
- wet_A = regA "våt" ;
- white_A = white_A ;
- wide_A = mk2A "bred" "brett" ;
- yellow_A = yellow_A ;
-
-
- -- Nouns
-
- animal_N = mk2N "djur" "djur" ;
- ashes_N = mk2N "aska" "askor" ;
- back_N = mk2N "rygg" "ryggar" ;
- bark_N = mk2N "bark" "barkar" ;
- belly_N = mk2N "mage" "magar" ;
- bird_N = bird_N ;
- blood_N = mk2N "blod" "blod" ;
- bone_N = mk2N "ben" "ben" ;
- breast_N = mk2N "bröst" "bröst" ;
- child_N = child_N ;
- cloud_N = mk2N "moln" "moln" ;
- day_N = mk2N "dag" "dagar" ;
- dog_N = dog_N ;
- dust_N = mk2N "damm" "damm" ;
- ear_N = mkN "öra" "örat" "öron" "öronen" ;
- earth_N = mk2N "jord" "jordar" ;
- egg_N = mk2N "ägg" "ägg" ;
- eye_N = mkN "öga" "ögat" "ögon" "ögonen" ;
- fat_N = mk2N "fett" "fett" ;
- father_N = (mkN "far" "fadern" "fäder" "fäderna") ;
--- father_N = UseN2 father_N2 ;
- feather_N = mk2N "fjäder" "fjädrar" ;
- fingernail_N = mkN "nagel" "nageln" "naglar" "naglarna";
- fire_N = mk2N "eld" "eldar" ;
- fish_N = fish_N ;
- flower_N = mk2N "blomma" "blommor" ;
- fog_N = mk2N "dimma" "dimmor" ;
- foot_N = mk2N "fot" "fötter" ;
- forest_N = mk2N "skog" "skogar" ;
- fruit_N = fruit_N ;
- grass_N = mk2N "gräs" "gräs" ;
- guts_N = mk2N "inälva" "inälvor" ;
- hair_N = mk2N "hår" "hår" ;
- hand_N = mk2N "hand" "händer" ;
- head_N = mkN "huvud" "huvudet" "huvuden" "huvudena" ;
- heart_N = mkN "hjärta" "hjärtat" "hjärtan" "hjärtana" ;
- horn_N = mk2N "horn" "horn" ;
- husband_N = (mk2N "make" "makar") ;
- ice_N = mk2N "is" "isar" ;
- knee_N = mkN "knä" "knäet" "knän" "knäna" ;
- lake_N = lake_N ;
- leaf_N = mk2N "löv" "löv" ;
- leg_N = mk2N "ben" "ben" ;
- liver_N = mkN "lever" "levern" "levrar" "levrarna";
- louse_N = mkN "lus" "lusen" "löss" "lössen" ;
- man_N = man_N ;
- meat_N = meat_N ;
- moon_N = moon_N ;
- mother_N = mkN "mor" "modern" "mödrar" "mödrarna" ;
--- mother_N = UseN2 mother_N2 ;
- mountain_N = mountain_N ;
- mouth_N = mkN "mun" "munnen" "munnar" "munnarna" ;
- name_N = mk2N "namn" "namn" ;
- neck_N = mk2N "nacke" "nackar" ;
- night_N = mk2N "natt" "nätter" ;
- nose_N = mk2N "näsa" "näsor" ;
- person_N = mk2N "person" "personer" ;
- rain_N = mk2N "regn" "regn" ;
- river_N = river_N ;
- road_N = mk2N "väg" "vägar" ;
- root_N = mk2N "rot" "rötter" ;
- rope_N = mk2N "rep" "rep" ;
- salt_N = mkN "salt" "saltet" "salter" "salterna";
- sand_N = mk2N "sand" "sander" ;
- sea_N = sea_N ;
- seed_N = mkN "frö" "fröet" "frön" "fröna" ;
- skin_N = mk2N "skinn" "skinn" ;
- sky_N = mk2N "himmel" "himlar" ;
- smoke_N = mk2N "rök" "rökar" ;
- snake_N = snake_N ;
- snow_N = mkN "snö" "snön" "snöer" "snöerna" ;
- star_N = star_N ;
- stick_N = mk2N "pinne" "pinnar" ;
- stone_N = stone_N ;
- sun_N = sun_N ;
- tail_N = mk2N "svans" "svansar" ;
- tongue_N = mk2N "tunga" "tungor" ;
- tooth_N = mk2N "tand" "tänder" ;
- tree_N = tree_N ;
- water_N = water_N ;
- wife_N = mk2N "fru" "fruar" ;
- wind_N = mk2N "vind" "vindar" ;
- wing_N = mk2N "vinge" "vingar" ;
- woman_N = woman_N ;
- worm_N = mk2N "mask" "maskar" ;
- year_N = mk2N "år" "år" ;
-
- -- Verbs
-
- bite_V = dirV2 (bita_V) ;
- blow_V = mk2V "blåsa" "blåste" ;
- breathe_V = dirV2 (depV (regV "anda")) ;
- burn_V = brinna_V ; -- FIXME: bränna?
- come_V = komma_V ;
- count_V = dirV2 (regV "räkna") ;
- cut_V = dirV2 (skära_V) ;
- die_V = dö_V ;
- dig_V = mk2V "gräva" "grävde" ;
- drink_V = dirV2 (dricka_V) ;
- eat_V = dirV2 (äta_V) ;
- fall_V = falla_V ;
- fear_V = dirV2 (regV "frukta") ;
- -- FIXME: passive forms are very strange
- fight_V = mkV2 (mkV "slåss" "slåss" "slåss" "slogs" "slagits" "slagen") "med" ;
- float_V = flyta_V ;
- flow_V = rinna_V ;
- fly_V = flyga_V ;
- freeze_V = frysa_V ;
- give_V = dirV3 giva_V "till";
- hear_V = dirV2 (mk2V "höra" "hörde") ;
- hit_V = dirV2 (slå_V) ;
- hold_V = dirV2 (hålla_V) ;
- hunt_V = dirV2 (regV "jaga") ;
- kill_V = dirV2 (regV "döda") ;
- know_V = dirV2 (känna_V) ;
- laugh_V = regV "skratta" ;
- lie_V = ligga_V ;
- live_V = leva_V ;
- play_V = mk2V "leka" "lekte" ;
- pull_V = dirV2 (draga_V) ;
- push_V = dirV2 (mk2V "trycka" "tryckte") ;
- rub_V = dirV2 (gnida_V) ;
- say_V = säga_V ;
- scratch_V = dirV2 (regV "klia") ;
- see_V = dirV2 (se_V) ;
- sew_V = sy_V ;
- sing_V = sjunga_V ;
- sit_V = sitta_V ;
- sleep_V = sova_V ;
- smell_V = regV "lukta" ;
- spit_V = regV "spotta" ;
- split_V = dirV2 (klyva_V) ;
- squeeze_V = dirV2 (klämma_V) ;
- stab_V = dirV2 (sticka_V) ;
- stand_V = stå_V ;
- suck_V = dirV2 (suga_V) ;
- swell_V = svälla_V ;
- swim_V = regV "simma" ;
- think_V = mk2V "tänka" "tänkte" ;
- throw_V = dirV2 (regV "kasta") ;
- tie_V = dirV2 (knyta_V) ;
- turn_V = vända_V ;
- vomit_V = mk2V "spy" "spydde" ;
- walk_V = gå_V ;
- wash_V = dirV2 (regV "tvätta") ;
- wipe_V = dirV2 (regV "torka") ;
-
-}
diff --git a/examples/bronzeage/old/SwadeshEng.gf b/examples/bronzeage/old/SwadeshEng.gf
new file mode 100644
index 000000000..b79111b11
--- /dev/null
+++ b/examples/bronzeage/old/SwadeshEng.gf
@@ -0,0 +1,243 @@
+concrete SwadeshEng of Swadesh = CatEng
+ ** open MorphoEng, LangEng, ParadigmsEng, IrregEng, Prelude in {
+
+ lincat
+ MassN = N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ all_Predet = all_Predet ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+
+-- left_Ord = left_Ord ;
+-- right_Ord = right_Ord ;
+
+ -- Adverbs
+
+ here_Adv = here_Adv;
+ there_Adv = there_Adv;
+ where_IAdv = where_IAdv;
+ when_IAdv = when_IAdv;
+ how_IAdv = how_IAdv;
+-- far_Adv = far_Adv ;
+
+ -- "not" treated in Verb
+
+ -- Conjunctions
+
+ and_Conj = and_Conj ;
+
+ -- Prepositions
+
+--- at_Prep = ss "at" ;
+ in_Prep = in_Prep ;
+ with_Prep = with_Prep ;
+
+ -- Numerals
+
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+
+ -- Adjectives
+
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = (regA "correct") ;
+ dirty_A = dirty_A ;
+ dry_A = regA "dry" ;
+ dull_A = regA "dull" ;
+ full_A = regA "full" ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = regA "heavy" ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = regA "near" ;
+ new_A = new_A ;
+ old_A = old_A ;
+ red_A = red_A ;
+ rotten_A = (regA "rotten") ;
+ round_A = regA "round" ;
+ sharp_A = regA "sharp" ;
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = regA "smooth" ;
+ straight_A = regA "straight" ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = regA "wet" ; ----
+ white_A = white_A ;
+ wide_A = regA "wide" ;
+ yellow_A = yellow_A ;
+
+ -- Nouns
+
+ animal_N = regN "animal" ;
+ ashes_N = regN "ash" ; -- FIXME: plural only?
+ back_N = regN "back" ;
+ bark_N = regN "bark" ;
+ belly_N = regN "belly" ;
+ bird_N = bird_N;
+ blood_N = regN "blood" ;
+ bone_N = regN "bone" ;
+ breast_N = regN "breast" ;
+ child_N = child_N ;
+ cloud_N = regN "cloud" ;
+ day_N = regN "day" ;
+ dog_N = dog_N ;
+ dust_N = regN "dust" ;
+ ear_N = regN "ear" ;
+ earth_N = regN "earth" ;
+ egg_N = regN "egg" ;
+ eye_N = regN "eye" ;
+ fat_N = regN "fat" ;
+ father_N = UseN2 father_N2 ;
+ feather_N = regN "feather" ;
+ fingernail_N = regN "fingernail" ;
+ fire_N = regN "fire" ;
+ fish_N = fish_N ;
+ flower_N = regN "flower" ;
+ fog_N = regN "fog" ;
+ foot_N = mk2N "foot" "feet" ;
+ forest_N = regN "forest" ;
+ fruit_N = fruit_N ;
+ grass_N = regN "grass" ;
+ guts_N = regN "gut" ; -- FIXME: no singular
+ hair_N = regN "hair" ;
+ hand_N = regN "hand" ;
+ head_N = regN "head" ;
+ heart_N = regN "heart" ;
+ horn_N = regN "horn" ;
+ husband_N = genderN masculine (regN "husband") ;
+ ice_N = regN "ice" ;
+ knee_N = regN "knee" ;
+ lake_N = lake_N ;
+ leaf_N = mk2N "leaf" "leaves" ;
+ leg_N = regN "leg" ;
+ liver_N = regN "liver" ;
+ louse_N = mk2N "louse" "lice" ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+ mother_N = UseN2 mother_N2 ;
+ mountain_N = mountain_N ;
+ mouth_N = regN "mouth" ;
+ name_N = regN "name" ;
+ neck_N = regN "neck" ;
+ night_N = regN "night" ;
+ nose_N = regN "nose" ;
+ person_N = genderN human (regN "person") ;
+ rain_N = regN "rain" ;
+ river_N = river_N ;
+ road_N = regN "road" ;
+ root_N = regN "root" ;
+ rope_N = regN "rope" ;
+ salt_N = regN "salt" ;
+ sand_N = regN "sand" ;
+ sea_N = sea_N ;
+ seed_N = regN "seed" ;
+ skin_N = regN "skin" ;
+ sky_N = regN "sky" ;
+ smoke_N = regN "smoke" ;
+ snake_N = snake_N ;
+ snow_N = regN "snow" ;
+ star_N = star_N ;
+ stick_N = regN "stick" ;
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = regN "tail" ;
+ tongue_N = regN "tongue" ;
+ tooth_N = mk2N "tooth" "teeth" ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = genderN feminine (mk2N "wife" "wives") ;
+ wind_N = regN "wind" ;
+ wing_N = regN "wing" ;
+ woman_N = woman_N ;
+ worm_N = regN "worm" ;
+ year_N = regN "year" ;
+
+ -- Verbs
+
+ bite_V2 = dirV2 bite_V ;
+ blow_V = blow_V ;
+ breathe_V = dirV2 (regV "breathe") ;
+ burn_V = burn_V ;
+ come_V = come_V ;
+ count_V2 = dirV2 (regV "count") ;
+ cut_V2 = dirV2 cut_V ;
+ die_V = die_V ;
+ dig_V = dig_V ;
+ drink_V2 = dirV2 drink_V ;
+ eat_V2 = dirV2 eat_V ;
+ fall_V = fall_V ;
+ fear_V2 = dirV2 (regV "fear") ;
+ fight_V2 = dirV2 fight_V ;
+ float_V = regV "float" ;
+ flow_V = regV "flow" ;
+ fly_V = fly_V ;
+ freeze_V = freeze_V ;
+ give_V3 = dirV3 give_V "to" ;
+ hear_V2 = dirV2 hear_V ;
+ hit_V2 = dirV2 hit_V ;
+ hold_V2 = dirV2 hold_V ;
+ hunt_V2 = dirV2 (regV "hunt") ;
+ kill_V2 = dirV2 (regV "kill") ;
+ know_V2 = dirV2 know_V ;
+ laugh_V = regV "laugh" ;
+ lie_V = lie_V ;
+ live_V = live_V ;
+ play_V = regV "play" ;
+ pull_V2 = dirV2 (regV "pull") ;
+ push_V2 = dirV2 (regV "push") ;
+ rub_V2 = dirV2 (regDuplV "rub") ;
+ say_V = say_V ;
+ scratch_V2 = dirV2 (regV "scratch") ;
+ see_V2 = dirV2 see_V ;
+ sew_V = sew_V ;
+ sing_V = sing_V ;
+ sit_V = sit_V ;
+ sleep_V = sleep_V ;
+ smell_V = regV "smell" ;
+ spit_V = spit_V ;
+ split_V2 = dirV2 split_V ;
+ squeeze_V2 = dirV2 (regV "squeeze") ;
+ stab_V2 = dirV2 (regDuplV "stab") ;
+ stand_V = stand_V ;
+ suck_V2 = dirV2 (regV "suck") ;
+ swell_V = swell_V ;
+ swim_V = swim_V ;
+ think_V = think_V ;
+ throw_V2 = dirV2 throw_V ;
+ tie_V2 = dirV2 (regV "tie") ;
+ turn_V = regV "turn" ;
+ vomit_V = regV "vomit" ;
+ walk_V = walk_V ;
+ wash_V2 = dirV2 (regV "wash") ;
+ wipe_V2 = dirV2 (regV "wipe") ;
+
+}
diff --git a/examples/bronzeage/old/SwadeshFin.gf b/examples/bronzeage/old/SwadeshFin.gf
new file mode 100644
index 000000000..4f73c5a09
--- /dev/null
+++ b/examples/bronzeage/old/SwadeshFin.gf
@@ -0,0 +1,269 @@
+--# -path=.:../present:../finnish:../common:../abstract:../../prelude
+
+concrete SwadeshFin of Swadesh = CatFin
+ ** open MorphoFin, LangFin, ParadigmsFin, Prelude in {
+
+ flags optimize=values ;
+
+ lincat
+ MassN = N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ all_Det = mkDet Pl {s = \\nf =>
+ let
+ kaiket = (nhn (sKorpi "kaikki" "kaiken" "kaikkena")).s
+ in
+ case nf of {
+ NCase Pl Nom => "kaikki" ;
+ _ => kaiket ! nf
+ }
+ } ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+ few_Det = mkDet Sg (regN "harva") ;
+ other_Det = mkDet Sg (regN "muu") ;
+
+ left_Ord = mkOrd (regN "vasen") ;
+ right_Ord = mkOrd (regN "oikea") ;
+
+ oper
+ mkOrd : N -> Ord ;
+ mkOrd x = {s = \\n,c => x.s ! NCase n c; lock_Ord = <> } ;
+
+ lin
+
+ -- Adverbs
+
+ here_Adv = here_Adv;
+ there_Adv = there_Adv;
+ where_IAdv = where_IAdv;
+ when_IAdv = when_IAdv;
+ how_IAdv = how_IAdv;
+ far_Adv = mkAdv "kaukana" ;
+
+ -- not : Adv ; -- ?
+
+ -- Conjunctions
+
+ and_Conj = and_Conj ;
+
+ -- Prepositions
+
+ at_Prep = casePrep adessive ;
+ in_Prep = casePrep inessive ;
+ with_Prep = postGenPrep "kanssa" ;
+
+ -- Numerals
+
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+
+ -- Adjectives
+
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = regA "oikea" ;
+ dirty_A = dirty_A ;
+ dry_A = mkADeg (regN "kuiva") "kuivempi" "kuivin" ;
+ dull_A = mkADeg (regN "tylsä") "tylsempi" "tylsin" ;
+ full_A = mkADeg (reg3N "täysi" "täyden" "täysiä") "täydempi" "täysin" ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = regA "raskas" ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = regA "läheinen" ;
+ new_A = new_A ;
+ old_A = old_A ;
+ red_A = red_A ;
+ rotten_A = regA "mätä" ;
+ round_A = regA "pyöreä" ;
+ sharp_A = regA "terävä" ;
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = regA "sileä" ;
+ straight_A = mkADeg (regN "suora") "suorempi" "suorin" ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = mkADeg (regN "märkä") "märempi" "märin" ;
+ white_A = white_A ;
+ wide_A = regA "leveä" ;
+ yellow_A = yellow_A ;
+
+ -- Nouns
+
+ animal_N = reg3N "eläin" "eläimen" "eläimiä" ;
+ ashes_N = regN "tuhka" ;
+ back_N = regN "selkä" ;
+ bark_N = regN "kaarna" ;
+ belly_N = regN "vatsa" ;
+ bird_N = bird_N;
+ blood_N = nMeri "veri" ;
+ bone_N = regN "luu" ;
+ breast_N = regN "rinta" ;
+ child_N = child_N ;
+ cloud_N = reg2N "pilvi" "pilviä" ;
+ day_N = regN "päivä" ;
+ dog_N = dog_N ;
+ dust_N = regN "pöly" ;
+ ear_N = regN "korva" ;
+ earth_N = regN "maa" ;
+ egg_N = regN "muna" ;
+ eye_N = regN "silmä" ;
+ fat_N = regN "rasva" ;
+ father_N = regN "isä" ;
+ feather_N = reg3N "höyhen" "höyhenen" "höyheniä" ;
+ fingernail_N = reg3N "kynsi" "kynnen" "kynsiä" ;
+ fire_N = reg2N "tuli" "tulia" ;
+ fish_N = fish_N ;
+ flower_N = regN "kukka" ;
+ fog_N = regN "sumu" ;
+ foot_N = regN "jalka" ;
+ forest_N = regN "metsä" ;
+ fruit_N = fruit_N ;
+ grass_N = regN "ruoho" ;
+ guts_N = regN "sisälmys" ; --- suoli
+ hair_N = regN "hius" ;
+ hand_N = reg3N "käsi" "käden" "käsiä" ;
+ head_N = regN "pää" ;
+ heart_N = reg3N "sydän" "sydämen" "sydämiä" ;
+ horn_N = reg2N "sarvi" "sarvia" ;
+ husband_N = man_N ; --- aviomies
+ ice_N = regN "jää" ;
+ knee_N = reg2N "polvi" "polvia" ;
+ lake_N = lake_N ;
+ leaf_N = reg2N "lehti" "lehtiä" ;
+ leg_N = regN "jalka" ; --- sääri
+ liver_N = regN "maksa" ;
+ louse_N = regN "lude" ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+ mother_N = regN "äiti" ;
+ mountain_N = mountain_N ;
+ mouth_N = regN "suu" ;
+ name_N = reg2N "nimi" "nimiä" ;
+ neck_N = regN "niska" ;
+ night_N = regN "yö" ;
+ nose_N = regN "nenä" ;
+ person_N = regN "henkilö" ;
+ rain_N = regN "sade" ;
+ river_N = river_N ;
+ road_N = regN "tie" ;
+ root_N = reg2N "juuri" "juuria" ;
+ rope_N = reg3N "köysi" "köyden" "köysiä" ;
+ salt_N = regN "suola" ;
+ sand_N = regN "hiekka" ;
+ sea_N = sea_N ;
+ seed_N = regN "siemen" ;
+ skin_N = regN "nahka" ;
+ sky_N = reg3N "taivas" "taivaan" "taivaita" ;
+ smoke_N = regN "savu" ;
+ snake_N = snake_N ;
+ snow_N = sgpartN (nMeri "lumi") "lunta" ;
+ star_N = star_N ;
+ stick_N = regN "keppi" ;
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = regN "häntä" ;
+ tongue_N = reg2N "kieli" "kieliä" ;
+ tooth_N = regN "hammas" ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = regN "vaimo" ;
+ wind_N = reg2N "tuuli" "tuulia" ;
+ wing_N = reg2N "siipi" "siipiä" ;
+ woman_N = woman_N ;
+ worm_N = regN "mato" ;
+ year_N = reg3N "vuosi" "vuoden" "vuosia" ;
+
+ -- Verbs
+
+ bite_V2 = dirV2 (regV "purra") ;
+ blow_V = regV "puhaltaa" ;
+ breathe_V2 = dirV2 (regV "hengittää") ;
+ burn_V = regV "palaa" ;
+ come_V = come_V ;
+ count_V2 = dirV2 (regV "laskea") ;
+ cut_V2 = dirV2 (reg2V "leikata" "leikkasi") ;
+ die_V = regV "kuolla";
+ dig_V = regV "kaivaa" ;
+ drink_V2 = dirV2 ( drink_V2) ;
+ eat_V2 = dirV2 ( eat_V2) ;
+ fall_V = reg3V "pudota" "putoan" "putosi" ;
+ fear_V2 = dirV2 (reg3V "pelätä" "pelkään" "pelkäsi") ;
+ fight_V2 = dirV2 (regV "taistella") ;
+ float_V = regV "kellua" ;
+ flow_V = reg3V "virrata" "virtaan" "virtasi" ;
+ fly_V = regV "lentää" ;
+ freeze_V = regV "jäätyä" ;
+ give_V = dirdirV3 (regV "antaa") ;
+ hear_V2 = dirV2 ( hear_V2) ;
+ hit_V2 = dirV2 (regV "lyödä") ;
+ hold_V2 = dirV2 (regV "pitää") ;
+ hunt_V2 = dirV2 (regV "metsästää") ;
+ kill_V2 = dirV2 (regV "tappaa") ;
+ know_V2 = dirV2 (reg2V "tuntea" "tunsin") ;
+ laugh_V = reg3V "nauraa" "nauran" "nauroi" ;
+ lie_V = reg3V "maata" "makaan" "makasi" ;
+ live_V = live_V ;
+ play_V = play_V2 ;
+ pull_V2 = dirV2 (regV "vetää") ;
+ push_V2 = dirV2 (regV "työntää") ;
+ rub_V2 = dirV2 (regV "hieroa") ;
+ say_V = regV "sanoa" ;
+ scratch_V2 = dirV2 (regV "raapia") ;
+ see_V = ( see_V2) ;
+ sew_V = regV "kylvää" ;
+ sing_V = regV "laulaa" ;
+ sit_V = regV "istua" ;
+ sleep_V = sleep_V ;
+ smell_V = reg2V "haistaa" "haistoi" ;
+ spit_V = regV "sylkeä" ;
+ split_V2 = dirV2 (reg2V "halkaista" "halkaisi") ;
+ squeeze_V2 = dirV2 (regV "puristaa") ;
+ stab_V2 = dirV2 (regV "pistää") ;
+ stand_V = mkV "seistä" "seisoo" "seison" "seisovat" "seiskää" "seistään"
+ "seisoi" "seisoin" "seisoisi" "seissyt" "seisty" "seistyn" ; --- *seisoivät
+ suck_V2 = dirV2 (regV "imeä") ;
+ swell_V = mkV "turvota" "turpoaa" "turpoan" "turpoavat" "turvotkaa" "turvotaan"
+ "turposi" "turposin" "turpoaisi" "turvonnut" "turvottu" "turvotun" ;
+ swim_V = reg3V "uida" "uin" "ui" ;
+ think_V = reg3V "ajatella" "ajattelen" "ajatteli" ;
+ throw_V2 = dirV2 (regV "heittää") ;
+ tie_V2 = dirV2 (regV "sitoa") ;
+ turn_V = regV "kääntyä" ;
+ vomit_V = regV "oksentaa" ;
+ walk_V = walk_V ;
+ wash_V2 = dirV2 (regV "pestä") ;
+ wipe_V2 = dirV2 (regV "pyyhkiä") ;
+
+oper
+ regA = regADeg ; ----
+
+
+}
diff --git a/examples/bronzeage/old/SwadeshFre.gf b/examples/bronzeage/old/SwadeshFre.gf
new file mode 100644
index 000000000..a7c326ca4
--- /dev/null
+++ b/examples/bronzeage/old/SwadeshFre.gf
@@ -0,0 +1,259 @@
+--# -path=.:../french:../common:../abstract:../../prelude:../romance
+
+concrete SwadeshFre of Swadesh = CatFre
+ ** open PhonoFre, MorphoFre, LangFre, ParadigmsFre, IrregFre, Prelude in {
+
+ lincat
+ MassN = N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ all_Det = {
+ s = \\g,c => prepCase c ++ genForms "tous" "toutes" ! g ++ "les" ;
+ n = Pl
+ } ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+ few_Det = {s = \\g,c => prepCase c ++ "peu" ++ elisDe ; n = Pl} ;
+ other_Det = {
+ s = \\g,c => prepCase c ++ "d'autres" ; -- de d'autres
+ n = Pl
+ } ;
+
+ left_Ord = mkOrd (regA "gauche") ;
+ right_Ord = mkOrd (regA "droite") ;
+
+ oper
+ mkOrd : A -> Ord ;
+ mkOrd x = {s = \\ag => x.s ! Posit ! AF ag.g ag.n; lock_Ord = <> } ;
+
+ lin
+
+ -- Adverbs
+
+ here_Adv = here_Adv;
+ there_Adv = there_Adv;
+ where_IAdv = where_IAdv;
+ when_IAdv = when_IAdv;
+ how_IAdv = how_IAdv;
+ far_Adv = mkAdv "loin" ;
+
+ -- not : Adv ; -- ?
+
+ -- Conjunctions
+
+ and_Conj = and_Conj ;
+
+ -- Prepositions
+
+ at_Prep = dative ;
+ in_Prep = in_Prep ;
+ with_Prep = with_Prep ;
+
+ -- Numerals
+
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+
+ -- Adjectives
+
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = regA "correct" ;
+ dirty_A = dirty_A ;
+ dry_A = (mkA "sec" "sèche" "secs" "sèches") ;
+ dull_A = regA "émoussé" ;
+ full_A = regA "plein" ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = regA "lourd" ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = regA "proche" ;
+ new_A = new_A ;
+ old_A = old_A ;
+ red_A = red_A ;
+ rotten_A = regA "pourri" ;
+ round_A = regA "rond" ;
+ sharp_A = regA "tranchant" ;
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = regA "lisse" ;
+ straight_A = regA "droite" ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = regA "mouillé" ;
+ white_A = white_A ;
+ wide_A = regA "large" ;
+ yellow_A = yellow_A ;
+
+ -- Nouns
+
+ animal_N = regN "animal" ;
+ ashes_N = regGenN "cendre" masculine ;
+ back_N = regN "dos" ;
+ bark_N = regN "écorce" ;
+ belly_N = regGenN "ventre" masculine ;
+ bird_N = bird_N;
+ blood_N = regN "sang" ;
+ bone_N = regN "os" ;
+ breast_N = regN "sein" ; --- poitrine
+ child_N = child_N ;
+ cloud_N = regGenN "nuage" masculine ;
+ day_N = regN "jour" ;
+ dog_N = dog_N ;
+ dust_N = regN "poussière" ;
+ ear_N = regN "oreille" ;
+ earth_N = regN "terre" ;
+ egg_N = regN "oeuf" ;
+ eye_N = mkN "oeil" "yeux" masculine ;
+ fat_N = regN "graisse" ;
+ father_N = UseN2 father_N2 ;
+ feather_N = regN "plume" ;
+ fingernail_N = regGenN "ongle" masculine ;
+ fire_N = regN "feu" ;
+ fish_N = fish_N ;
+ flower_N = regGenN "fleur" feminine ;
+ fog_N = regN "brouillard" ;
+ foot_N = regN "pied" ;
+ forest_N = regGenN "forêt" feminine ;
+ fruit_N = fruit_N ;
+ grass_N = regN "herbe" ;
+ guts_N = regN "entraille" ;
+ hair_N = regN "cheveu" ;
+ hand_N = regGenN "main" feminine ;
+ head_N = regN "tête" ;
+ heart_N = regN "coeur" ;
+ horn_N = regGenN "corne" masculine ;
+ husband_N = regN "mari" ;
+ ice_N = regN "glace" ;
+ knee_N = regN "genou" ;
+ lake_N = lake_N ;
+ leaf_N = regN "feuille" ;
+ leg_N = regN "jambe" ;
+ liver_N = regGenN "foie" masculine ;
+ louse_N = regN "pou" ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+ mother_N = UseN2 mother_N2 ;
+ mountain_N = mountain_N ;
+ mouth_N = regN "bouche" ;
+ name_N = regN "nom" ;
+ neck_N = mkN "cou" "cous" masculine ;
+ night_N = regGenN "nuit" feminine ;
+ nose_N = regN "nez" ;
+ person_N = regN "personne" ;
+ rain_N = regN "pluie" ;
+ river_N = river_N ;
+ road_N = regN "route" ;
+ root_N = regN "racine" ;
+ rope_N = regN "corde" ;
+ salt_N = regN "sel" ;
+ sand_N = regGenN "sable" masculine ;
+ sea_N = sea_N ;
+ seed_N = regN "graine" ;
+ skin_N = regN "peau" ;
+ sky_N = mkN "ciel" "cieux" masculine ;
+ smoke_N = regN "fumée" ;
+ snake_N = snake_N ;
+ snow_N = regN "neige" ;
+ star_N = star_N ;
+ stick_N = regN "bâton" ;
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = regN "queue" ;
+ tongue_N = regN "langue" ;
+ tooth_N = regGenN "dent" feminine ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = regN "femme" ;
+ wind_N = regN "vent" ;
+ wing_N = regN "aile" ;
+ woman_N = woman_N ;
+ worm_N = regN "ver" ;
+ year_N = regN "an" ; --- année
+
+ -- Verbs
+
+ bite_V = ( mordre_V2) ;
+ blow_V = regV "souffler" ;
+ breathe_V2 = dirV2 (regV "respirer") ;
+ burn_V = regV "brûler" ;
+ come_V = venir_V ;
+ count_V2 = dirV2 (regV "conter") ;
+ cut_V2 = dirV2 (regV "tailler") ;
+ die_V = mourir_V ;
+ dig_V = regV "creuser" ;
+ drink_V = ( boire_V2) ;
+ eat_V2 = dirV2 (regV "manger") ;
+ fall_V = regV "tomber" ;
+ fear_V = ( craindre_V2) ;
+ fight_V2 = dirV2 (regV "lutter") ;
+ float_V = regV "flotter" ;
+ flow_V = regV "couler" ;
+ fly_V = regV "voler" ;
+ freeze_V = reg3V "geler" "gèle" "gèlera" ;
+ give_V = dirdirV3 (regV "donner") ;
+ hear_V = ( entendre_V2) ;
+ hit_V2 = dirV2 (regV "frapper") ;
+ hold_V = ( tenir_V2) ;
+ hunt_V2 = dirV2 (regV "chasser") ;
+ kill_V2 = dirV2 (regV "tuer") ;
+ know_V = ( connaître_V2) ;
+ laugh_V = rire_V2 ;
+ lie_V = reflV étendre_V2 ;
+ live_V = vivre_V2 ;
+ play_V = regV "jouer" ;
+ pull_V2 = dirV2 (regV "tirer") ;
+ push_V2 = dirV2 (regV "pousser") ;
+ rub_V2 = dirV2 (regV "frotter") ;
+ say_V = dire_V2 ;
+ scratch_V2 = dirV2 (regV "gratter") ;
+ see_V = ( voir_V2) ;
+ sew_V = coudre_V2 ;
+ sing_V = regV "chanter" ;
+ sit_V = reflV asseoir_V2 ;
+ sleep_V = dormir_V2 ;
+ smell_V = v2V ( sentir_V2) ;
+ spit_V = regV "cracher" ;
+ split_V = ( fendre_V2) ;
+ squeeze_V2 = dirV2 (regV "serrer") ;
+ stab_V2 = dirV2 (regV "poignarder") ;
+ stand_V = reflV (reg3V "lever" "lève" "lèvera") ;
+ suck_V2 = dirV2 (regV "sucer") ;
+ swell_V = regV "gonfler" ;
+ swim_V = regV "nager" ;
+ think_V = regV "penser" ;
+ throw_V2 = dirV2 (regV "jeter") ;
+ tie_V2 = dirV2 (regV "lier") ;
+ turn_V = regV "tourner" ;
+ vomit_V = regV "vomir" ;
+ walk_V = regV "marcher" ;
+ wash_V2 = dirV2 (regV "laver") ;
+ wipe_V2 = dirV2 (regV "essuyer") ;
+
+}
diff --git a/examples/bronzeage/SwadeshGer.gf b/examples/bronzeage/old/SwadeshGer.gf
similarity index 87%
rename from examples/bronzeage/SwadeshGer.gf
rename to examples/bronzeage/old/SwadeshGer.gf
index 3b29da219..85c057bb0 100644
--- a/examples/bronzeage/SwadeshGer.gf
+++ b/examples/bronzeage/old/SwadeshGer.gf
@@ -190,59 +190,59 @@ concrete SwadeshGer of Swadesh = CatGer
-- bite_V = bite_V ;
-- blow_V = blow_V ;
--- breathe_V = dirV2 (regV "breathe") ;
+-- breathe_V2 = dirV2 (regV "breathe") ;
-- burn_V = burn_V ;
come_V = come_V ;
--- count_V = dirV2 (regV "count") ;
--- cut_V = dirV2 cut_V ;
+-- count_V2 = dirV2 (regV "count") ;
+-- cut_V2 = dirV2 cut_V ;
die_V = die_V ;
-- dig_V = dig_V ;
drink_V = drink_V2 ;
eat_V = eat_V2 ;
-- fall_V = fall_V ;
--- fear_V = dirV2 (regV "fear") ;
--- fight_V = dirV2 fight_V ;
+-- fear_V2 = dirV2 (regV "fear") ;
+-- fight_V2 = dirV2 fight_V ;
-- float_V = regV "float" ;
-- flow_V = regV "flow" ;
-- fly_V = fly_V ;
-- freeze_V = freeze_V ;
-- give_V = dirdirV3 give_V ;
hear_V = hear_V2 ;
--- hit_V = dirV2 hit_V ;
--- hold_V = dirV2 hold_V ;
--- hunt_V = dirV2 (regV "hunt") ;
--- kill_V = dirV2 (regV "kill") ;
--- know_V = dirV2 know_V ;
+-- hit_V2 = dirV2 hit_V ;
+-- hold_V2 = dirV2 hold_V ;
+-- hunt_V2 = dirV2 (regV "hunt") ;
+-- kill_V2 = dirV2 (regV "kill") ;
+-- know_V2 = dirV2 know_V ;
-- laugh_V = regV "laugh" ;
-- lie_V = lie_V ;
live_V = live_V ;
-- play_V = regV "play" ;
--- pull_V = dirV2 (regV "pull") ;
--- push_V = dirV2 (regV "push") ;
--- rub_V = dirV2 (regDuplV "rub") ;
+-- pull_V2 = dirV2 (regV "pull") ;
+-- push_V2 = dirV2 (regV "push") ;
+-- rub_V2 = dirV2 (regDuplV "rub") ;
-- say_V = say_V ;
--- scratch_V = dirV2 (regV "scratch") ;
+-- scratch_V2 = dirV2 (regV "scratch") ;
-- see_V = see_V2 ;
-- sew_V = sew_V ;
-- sing_V = sing_V ;
-- sit_V = sit_V ;
sleep_V = sleep_V ;
--- smell_V = dirV2 (regV "smell") ;
+-- smell_V2 = dirV2 (regV "smell") ;
-- spit_V = spit_V ;
--- split_V = dirV2 split_V ;
--- squeeze_V = dirV2 (regV "squeeze") ;
--- stab_V = dirV2 (regDuplV "stab") ;
+-- split_V2 = dirV2 split_V ;
+-- squeeze_V2 = dirV2 (regV "squeeze") ;
+-- stab_V2 = dirV2 (regDuplV "stab") ;
-- stand_V = stand_V ;
--- suck_V = dirV2 (regV "suck") ;
+-- suck_V2 = dirV2 (regV "suck") ;
-- swell_V = swell_V ;
-- swim_V = swim_V ;
-- think_V = think_V ;
--- throw_V = dirV2 throw_V ;
--- tie_V = dirV2 (regV "tie") ;
+-- throw_V2 = dirV2 throw_V ;
+-- tie_V2 = dirV2 (regV "tie") ;
-- turn_V = regV "turn" ;
-- vomit_V = regV "vomit" ;
walk_V = walk_V ;
--- wash_V = dirV2 (regV "wash") ;
--- wipe_V = dirV2 (regV "wipe") ;
+-- wash_V2 = dirV2 (regV "wash") ;
+-- wipe_V2 = dirV2 (regV "wipe") ;
}
diff --git a/examples/bronzeage/old/SwadeshIta.gf b/examples/bronzeage/old/SwadeshIta.gf
new file mode 100644
index 000000000..7d55f2a99
--- /dev/null
+++ b/examples/bronzeage/old/SwadeshIta.gf
@@ -0,0 +1,258 @@
+--# -path=.:../italian:../common:../abstract:../../prelude:../romance
+
+concrete SwadeshIta of Swadesh = CatIta
+ ** open PhonoIta, MorphoIta, LangIta, ParadigmsIta, BeschIta, Prelude in {
+
+ lincat
+ MassN = N ;
+
+ lin
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ all_Det = {
+ s = \\g,c => prepCase c ++ genForms ["tutti i"] ["tutte le"] ! g ;
+ n = Pl
+ } ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+ few_Det = {s = \\g,c => prepCase c ++ genForms "pochi" "poche" ! g ; n = Pl} ;
+ other_Det = {
+ s = \\g,c => prepCase c ++ genForms "altri" "altre" ! g ;
+ n = Pl
+ } ;
+
+ left_Ord = mkOrd (regA "sinistro") ;
+ right_Ord = mkOrd (regA "destro") ;
+
+ oper
+ mkOrd : A -> Ord ;
+ mkOrd x = {s = \\ag => x.s ! Posit ! AF ag.g ag.n; lock_Ord = <> } ;
+
+ lin
+
+ -- Adverbs
+
+ here_Adv = here_Adv;
+ there_Adv = there_Adv;
+ where_IAdv = where_IAdv;
+ when_IAdv = when_IAdv;
+ how_IAdv = how_IAdv;
+ far_Adv = mkAdv "lontano" ;
+
+ -- not : Adv ; -- ?
+
+ -- Conjunctions
+
+ and_Conj = and_Conj ;
+
+ -- Prepositions
+
+ at_Prep = dative ;
+ in_Prep = in_Prep ;
+ with_Prep = with_Prep ;
+
+ -- Numerals
+
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+
+ -- Adjectives
+
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = regA "corretto" ;
+ dirty_A = dirty_A ;
+ dry_A = regA "secco" ;
+ dull_A = regA "noioso" ;
+ full_A = regA "pieno" ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = regA "pesante" ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = regA "vicino" ;
+ new_A = new_A ;
+ old_A = old_A ;
+ red_A = red_A ;
+ rotten_A = regA "marcio" ;
+ round_A = regA "rotondo" ;
+ sharp_A = regA "aguzzo" ;
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = regA "liscio" ;
+ straight_A = regA "diretto" ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = regA "bagnato" ;
+ white_A = white_A ;
+ wide_A = regA "largo" ;
+ yellow_A = yellow_A ;
+
+ -- Nouns
+
+ animal_N = regN "animale" ;
+ ashes_N = regN "cenere" ;
+ back_N = regN "schiena" ;
+ bark_N = regN "corteccia" ;
+ belly_N = regN "pancia" ;
+ bird_N = bird_N;
+ blood_N = regN "sangue" ;
+ bone_N = regN "osso" ;
+ breast_N = regN "seno" ;
+ child_N = child_N ;
+ cloud_N = regN "nuvola" ;
+ day_N = regN "giorno" ;
+ dog_N = dog_N ;
+ dust_N = regN "polvere" ;
+ ear_N = regN "orecchio" ;
+ earth_N = regN "terra" ;
+ egg_N = mkN "uovo" "uova" masculine ; -- fem in Pl
+ eye_N = regN "occhio" ;
+ fat_N = regN "grasso" ;
+ father_N = UseN2 father_N2 ;
+ feather_N = regN "piuma" ;
+ fingernail_N = regN "unghia" ;
+ fire_N = regN "fuoco" ;
+ fish_N = fish_N ;
+ flower_N = regN "fiore" ;
+ fog_N = regN "nebbia" ;
+ foot_N = regN "piede" ;
+ forest_N = regN "bosco" ;
+ fruit_N = fruit_N ;
+ grass_N = regN "erba" ;
+ guts_N = regN "intestino" ;
+ hair_N = regN "capello" ;
+ hand_N = femN (regN "mano") ;
+ head_N = regN "testa" ;
+ heart_N = regN "cuore" ;
+ horn_N = regN "corno" ;
+ husband_N = regN "marito" ;
+ ice_N = regN "ghiaccio" ;
+ knee_N = regN "ginocchio" ;
+ lake_N = lake_N ;
+ leaf_N = regN "foglia" ;
+ leg_N = regN "gamba" ;
+ liver_N = regN "fegato" ;
+ louse_N = regN "pidocchio" ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+ mother_N = UseN2 mother_N2 ;
+ mountain_N = mountain_N ;
+ mouth_N = regN "bocca" ;
+ name_N = regN "nome" ;
+ neck_N = regN "collo" ;
+ night_N = femN (regN "notte") ;
+ nose_N = regN "naso" ;
+ person_N = regN "persona" ;
+ rain_N = regN "pioggia" ;
+ river_N = river_N ;
+ road_N = regN "strada" ;
+ root_N = femN (regN "radice") ;
+ rope_N = regN "corda" ;
+ salt_N = regN "sale" ;
+ sand_N = regN "sabbia" ;
+ sea_N = sea_N ;
+ seed_N = regN "seme" ;
+ skin_N = femN (regN "pelle") ;
+ sky_N = regN "cielo" ;
+ smoke_N = regN "fumo" ;
+ snake_N = snake_N ;
+ snow_N = femN (regN "neve") ;
+ star_N = star_N ;
+ stick_N = regN "bastone" ;
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = regN "coda" ;
+ tongue_N = regN "lingua" ;
+ tooth_N = regN "dente" ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = regN "donna" ;
+ wind_N = regN "vento" ;
+ wing_N = regN "ala" ;
+ woman_N = woman_N ;
+ worm_N = regN "verme" ;
+ year_N = regN "anno" ;
+
+ -- Verbs
+
+ bite_V2 = dirV2 (verboV (esplodere_51 "mordere")) ;
+ blow_V = regV "soffiare" ;
+ breathe_V2 = dirV2 (regV "respirare") ;
+ burn_V = regV "bruciare" ;
+ come_V = come_V ;
+ count_V2 = dirV2 (regV "contare") ;
+ cut_V2 = dirV2 (regV "tagliare") ;
+ die_V = die_V ;
+ dig_V = regV "scavare" ;
+ drink_V2 = dirV2 (drink_V2) ;
+ eat_V2 = dirV2 (regV "mangiare") ;
+ fall_V = essereV (verboV (cadere_28 "cadere")) ;
+ fear_V2 = dirV2 (fear_VS) ;
+ fight_V2 = dirV2 (regV "lottare") ;
+ float_V = regV "galleggiare" ;
+ flow_V = verboV (finire_100 "fluire") ;
+ fly_V = regV "volare" ;
+ freeze_V = regV "gelare" ;
+ give_V = dirdirV3 (verboV (dare_15 "dare")) ;
+ hear_V2 = dirV2 (hear_V2) ;
+ hit_V2 = dirV2 (regV "colpire") ;
+ hold_V2 = dirV2 (verboV (venire_110 "tenire")) ;
+ hunt_V2 = dirV2 (regV "cacciare") ;
+ kill_V2 = dirV2 (verboV (ridere_74 "uccidere")) ;
+ know_V2 = dirV2 (know_V2) ;
+ laugh_V = verboV (ridere_74 "ridere") ;
+ lie_V = verboV (piacere_64 "giacere") ;
+ live_V = live_V ;
+ play_V = regV "giocare" ;
+ pull_V2 = dirV2 (regV "tirare") ;
+ push_V2 = dirV2 (verboV (cingere_31 "spingere")) ;
+ rub_V2 = dirV2 (regV "strofinare") ;
+ say_V = say_VS ;
+ scratch_V2 = dirV2 (regV "graffiare") ;
+ see_V2 = dirV2 (see_V2) ;
+ sew_V = verboV (cucire_103 "cucire") ;
+ sing_V = regV "cantare" ;
+ sit_V = reflV (verboV (sedere_84 "sedere")) ;
+ sleep_V = sleep_V ;
+ smell_V = verboV (sentire_99 "sentire") ;
+ spit_V = regV "sputare" ;
+ split_V2 = dirV2 (verboV (ridere_74 "dividere")) ;
+ squeeze_V2 = dirV2 (verboV (temere_20 "spremere")) ;
+ stab_V2 = dirV2 (regV "pugnalare") ;
+ stand_V = verboV (stare_16 "stare") ; ---- in piedi
+ suck_V2 = dirV2 (regV "succhiare") ;
+ swell_V = regV "gonfiare" ;
+ swim_V = regV "nuotare" ;
+ think_V = regV "pensare" ;
+ throw_V2 = dirV2 (regV "gettare") ;
+ tie_V2 = dirV2 (regV "legare") ;
+ turn_V = regV "tornare" ;
+ vomit_V = regV "vomitare" ;
+ walk_V = regV "camminare" ;
+ wash_V2 = dirV2 (regV "lavare") ;
+ wipe_V2 = dirV2 (regV "asciugare") ;
+
+}
diff --git a/examples/bronzeage/old/SwadeshNor.gf b/examples/bronzeage/old/SwadeshNor.gf
new file mode 100644
index 000000000..48d8a4db8
--- /dev/null
+++ b/examples/bronzeage/old/SwadeshNor.gf
@@ -0,0 +1,252 @@
+--# -path=.:../norwegian:../common:../abstract:../scandinavian:../../prelude
+
+concrete SwadeshNor of Swadesh = CatNor
+ ** open MorphoNor, LangNor, ParadigmsNor, IrregNor, Prelude in {
+
+ lincat
+ MassN = N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ all_Det = {s = \\_,_ => "alle" ; n = Pl ; det = DDef Indef} ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+ few_Det = {s = \\_,_ => "få" ; n = Pl ; det = DDef Indef} ;
+ other_Det = {s = \\_,_ => "andre" ; n = Pl ; det = DDef Indef} ;
+
+ left_Ord = {s = "venstre" ; isDet = True} ;
+ right_Ord = {s = "høyre" ; isDet = True} ;
+
+ -- Adverbs
+
+ here_Adv = here_Adv ;
+ there_Adv = there_Adv ;
+ where_IAdv = where_IAdv ;
+ when_IAdv = when_IAdv ;
+ how_IAdv = how_IAdv ;
+
+ far_Adv = mkAdv "fjern" ;
+
+ -- not : Adv ; -- ?
+
+ -- Conjunctions
+
+ and_Conj = and_Conj ;
+
+ -- Prepositions
+
+ at_Prep = ss "ved" ;
+ in_Prep = ss "i" ;
+ with_Prep = ss "med" ;
+
+ -- Numerals
+
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+
+ -- Adjectives
+
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = regA "riktig" ;
+ dirty_A = dirty_A ;
+ dry_A = mk2A "tørr" "tørt" ;
+ dull_A = regA "sløv" ;
+ full_A = regA "full" ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = irregADeg "tung" "tyngre" "tyngst" ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = mkADeg "nære" "nære" "nære" "nærmere" "nærmest" ;
+ new_A = new_A ;
+ old_A = old_A ;
+ red_A = red_A ;
+ rotten_A = mk3ADeg "råtten" "råttent" "råtne" ;
+ round_A = regA "rund" ;
+ sharp_A = mk2A "kvass" "kvast" ;
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = mk2A "slett" "slett" ;
+ straight_A = regA "rak" ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = regA "våt" ;
+ white_A = white_A ;
+ wide_A = regA "bred" ;
+ yellow_A = yellow_A ;
+
+
+ -- Nouns
+
+ animal_N = mk2N "dyr" "dyret" ;
+ ashes_N = mk2N "aske" "aska" ;
+ back_N = mk2N "rygg" "ryggen" ;
+ bark_N = mk2N "bark" "barken" ;
+ belly_N = mk2N "mage" "magen" ;
+ bird_N = bird_N ;
+ blood_N = mk2N "blod" "blodet" ;
+ bone_N = mk2N "bein" "beinet" ;
+ breast_N = mk2N "bryst" "brystet" ;
+ child_N = child_N ;
+ cloud_N = mk2N "sky" "skya" ;
+ day_N = mk2N "dag" "dagen" ;
+ dog_N = dog_N ;
+ dust_N = mk2N "støv" "støvet" ;
+ ear_N = mk2N "øre" "øret" ;
+ earth_N = mk2N "jord" "jorda" ;
+ egg_N = mk2N "egg" "egget" ;
+ eye_N = mkN "øye" "øyet" "øyne" "øynene" ;
+ fat_N = mk2N "fett" "fettet" ;
+ father_N = mkN "far" "faren" "fedre" "fedrene" ;
+-- father_N = UseN2 father_N2 ;
+ feather_N = mk2N "fjør" "fjøra" ;
+ fingernail_N = mk2N "negl" "neglen" ;
+ fire_N = mk2N "ild" "ilden" ;
+ fish_N = fish_N ;
+ flower_N = mk2N "blomst" "blomsten" ;
+ fog_N = mk2N "tåke" "tåka" ;
+ foot_N = mk2N "fot" "føtter" ;
+ forest_N = mk2N "skog" "skogen" ;
+ fruit_N = fruit_N ;
+ grass_N = mk2N "gras" "graset" ;
+ guts_N = mk2N "tarm" "tarmen" ; ---- involler
+ hair_N = mk2N "hår" "håret" ;
+ hand_N = mk2N "hånd" "hånden" ;
+
+ head_N = mk2N "hode" "hodet" ;
+ heart_N = mk2N "hjerte" "hjertet" ;
+ horn_N = mk2N "horn" "hornet" ;
+ husband_N = mkN "ektemann" "ektemannen" "ektemenn" "ektemennen" ;
+ ice_N = mk2N "is" "isen" ;
+ knee_N = mkN "kne" "kneet" "knær" "knæne" ;
+ lake_N = lake_N ;
+ leaf_N = mk2N "løv" "løvet" ;
+ leg_N = mk2N "bein" "beinet" ;
+ liver_N = mkN "lever" "leveren" "levrer" "levrene" ;
+ louse_N = mk2N "lus" "lusa" ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+ mother_N = mkN "mor" "moren" "mødre" "mødrene" ;
+-- mother_N = UseN2 mother_N2 ;
+ mountain_N = mountain_N ;
+ mouth_N = mk2N "munn" "munnen" ;
+ name_N = mk2N "navn" "navnet" ;
+ neck_N = mk2N "nakke" "nakken" ;
+ night_N = mkN "natt" "natta" "netter" "nettene" ;
+ nose_N = mk2N "nese" "nesen" ;
+ person_N = mk2N "person" "personen" ;
+ rain_N = mk2N "regn" "regnet" ;
+ river_N = river_N ;
+ road_N = mk2N "vei" "veien" ;
+ root_N = mkN "rot" "rota" "røtter" "røttene" ;
+ rope_N = mk2N "tau" "tauet" ;
+ salt_N = mk2N "salt" "saltet" ;
+ sand_N = mk2N "sand" "sanden" ;
+ sea_N = sea_N ;
+ seed_N = mk2N "frø" "frøet" ;
+ skin_N = mk2N "skinn" "skinnet" ;
+ sky_N = mkN "himmel" "himmelen" "himler" "himlene" ;
+ smoke_N = mk2N "røyk" "røyken" ;
+ snake_N = snake_N ;
+ snow_N = mk2N "snø" "snøen" ;
+ star_N = star_N ;
+ stick_N = mk2N "pinne" "pinnen" ;
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = mk2N "hale" "halen" ;
+ tongue_N = mk2N "tunge" "tunga" ;
+ tooth_N = mkN "tann" "tanna" "tenner" "tennene" ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = mk2N "kone" "kona" ;
+ wind_N = mk2N "vind" "vinden" ;
+ wing_N = mk2N "vinge" "vingen" ;
+ woman_N = woman_N ;
+ worm_N = mk2N "mark" "marken" ;
+ year_N = mk2N "år" "året" ;
+
+ -- Verbs
+
+ bite_V2 = dirV2 (IrregNor.bite_V) ;
+ blow_V = mk2V "blåse" "blåste" ;
+ breathe_V2 = dirV2 (regV "puste") ;
+ burn_V = brenne_V ;
+ come_V = komme_V ;
+ count_V2 = dirV2 (regV "regne") ;
+ cut_V2 = dirV2 (skjære_V) ;
+ die_V = dø_V ;
+ dig_V = mk2V "grave" "gravde" ;
+ drink_V2 = dirV2 (drikke_V) ;
+ eat_V2 = dirV2 (mk2V "spise" "spiste") ;
+ fall_V = falle_V ;
+ fear_V2 = dirV2 (regV "frykte") ;
+ fight_V2 = dirV2 (slåss_V) ;
+ float_V = flyte_V ;
+ flow_V = renne_V ;
+ fly_V = fly_V ;
+ freeze_V = fryse_V ;
+ give_V = dirdirV3 gi_V ;
+ hear_V2 = dirV2 (mk2V "høre" "hørde") ;
+ hit_V2 = dirV2 (slå_V) ;
+ hold_V2 = dirV2 (holde_V) ;
+ hunt_V2 = dirV2 (regV "jakte") ;
+ kill_V2 = dirV2 (mk2V "drepe" "drepte") ;
+ know_V2 = dirV2 (vite_V) ;
+ laugh_V = mkV "le" "ler" "les" "lo" "ledd" "le" ;
+ lie_V = ligge_V ;
+ live_V = mk2V "leve" "levde" ;
+ play_V = mk2V "leke" "lekte" ;
+ pull_V2 = dirV2 (dra_V) ;
+ push_V2 = dirV2 (irregV "skyve" "skjøv" "skjøvet") ;
+ rub_V2 = dirV2 (gni_V) ;
+ say_V = si_V ;
+ scratch_V2 = dirV2 (regV "klø") ;
+ see_V2 = dirV2 (se_V) ;
+ sew_V = mk2V "sy" "sydde" ;
+ sing_V = synge_V ;
+ sit_V = sitte_V ;
+ sleep_V = sove_V ;
+ smell_V = regV "lukte" ;
+ spit_V = regV "spytte" ;
+ split_V2 = dirV2 (mk2V "kløyve" "kløyvde") ;
+ squeeze_V2 = dirV2 (mk2V "klemme" "klemte") ;
+ stab_V2 = dirV2 (stikke_V) ;
+ stand_V = stå_V ;
+ suck_V2 = dirV2 (suge_V) ;
+ swell_V = partV (regV "hovne") "opp" ;
+ swim_V = regV "simme" ;
+ think_V = mk2V "tenke" "tenkte" ;
+ throw_V2 = dirV2 (regV "kaste") ;
+ tie_V2 = dirV2 (regV "knytte") ;
+ turn_V = mk2V "vende" "vendte" ;
+ vomit_V = partV (regV "kaste") "opp" ;
+ walk_V = gå_V ;
+ wash_V2 = dirV2 (regV "vaske") ;
+ wipe_V2 = dirV2 (regV "tørke") ;
+
+}
diff --git a/examples/bronzeage/SwadeshRus.gf b/examples/bronzeage/old/SwadeshRus.gf
similarity index 100%
rename from examples/bronzeage/SwadeshRus.gf
rename to examples/bronzeage/old/SwadeshRus.gf
diff --git a/examples/bronzeage/old/SwadeshSpa.gf b/examples/bronzeage/old/SwadeshSpa.gf
new file mode 100644
index 000000000..c7ef810df
--- /dev/null
+++ b/examples/bronzeage/old/SwadeshSpa.gf
@@ -0,0 +1,262 @@
+--# -path=.:../spanish:../common:../abstract:../../prelude:../romance
+
+concrete SwadeshSpa of Swadesh = CatSpa
+ ** open PhonoSpa, MorphoSpa, LangSpa, ParadigmsSpa, BeschSpa, Prelude in {
+
+-- words contributed by Ana Bove, May 2005
+
+ lincat
+ MassN = N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ all_Det = {
+ s = \\g,c => prepCase c ++ genForms ["todos los"] ["todas las"] ! g ;
+ n = Pl
+ } ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+ few_Det = {s = \\g,c => prepCase c ++ genForms "pocos" "pocas" ! g ; n = Pl} ;
+ other_Det = {
+ s = \\g,c => prepCase c ++ genForms "otros" "otras" ! g ;
+ n = Pl
+ } ;
+
+ left_Ord = mkOrd (regA "izquierda") ;
+ right_Ord = mkOrd (regA "derecha") ;
+
+ oper
+ mkOrd : A -> Ord ;
+ mkOrd x = {s = \\ag => x.s ! Posit ! AF ag.g ag.n; lock_Ord = <> } ;
+
+ lin
+
+ -- Adverbs
+
+ here_Adv = here_Adv;
+ there_Adv = there_Adv;
+ where_IAdv = where_IAdv;
+ when_IAdv = when_IAdv;
+ how_IAdv = how_IAdv;
+ far_Adv = mkAdv "lejos" ; ----?
+
+ -- not : Adv ; -- ?
+
+ -- Conjunctions
+
+ and_Conj = and_Conj ;
+
+ -- Prepositions
+
+ at_Prep = dative ;
+ in_Prep = in_Prep ;
+ with_Prep = with_Prep ;
+
+ -- Numerals
+
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+
+
+ -- Adjectives
+
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = regA "correcto" ;
+ dirty_A = dirty_A ;
+ dry_A = regA "seco" ;
+ dull_A = regA "desafilado" ;
+ full_A = regA "lleno" ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = regA "pesado" ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = regA "cerca" ;
+ new_A = new_A ;
+ old_A = old_A ;
+ red_A = red_A ;
+ rotten_A = regA "podrido" ;
+ round_A = regA "redondo" ;
+ sharp_A = regA "filoso" ; -- afilado, puntiagudo
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = regA "liso" ; -- suave
+ straight_A = regA "directo" ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = regA "mojado" ;
+ white_A = white_A ;
+ wide_A = regA "ancho" ; -- extenso
+ yellow_A = yellow_A ;
+
+ -- Nouns
+
+ animal_N = regN "animal" ; -- masc (sometimes fem when adj)
+ ashes_N = regN "ceniza" ;
+ back_N = regN "espalda" ;
+ bark_N = regN "corteza" ;
+ belly_N = regN "panza" ; -- barriga
+ bird_N = bird_N;
+ blood_N = femN (regN "sangre") ;
+ bone_N = regN "hueso" ;
+ breast_N = regN "seno" ; -- pecho
+ child_N = child_N ;
+ cloud_N = femN (regN "nube") ;
+ day_N = mascN (regN "día") ;
+ dog_N = dog_N ;
+ dust_N = regN "polvo" ;
+ ear_N = regN "oreja" ;
+ earth_N = regN "tierra" ;
+ egg_N = regN "huevo" ;
+ eye_N = regN "ojo" ;
+ fat_N = regN "grasa" ;
+ father_N = UseN2 father_N2 ;
+ feather_N = regN "pluma" ;
+ fingernail_N = regN "uña" ;
+ fire_N = regN "fuego" ;
+ fish_N = fish_N ;
+ flower_N = femN (regN "flor") ;
+ fog_N = regN "niebla" ;
+ foot_N = regN "pie" ;
+ forest_N = regN "bosque" ;
+ fruit_N = fruit_N ;
+ grass_N = regN "pasto" ; -- hierba, césped (masc)
+ guts_N = regN "tripa" ; -- gut=intestino ---- pl.t. tripas
+ hair_N = regN "cabello" ; -- pelo
+ hand_N = femN (regN "mano") ;
+ head_N = regN "cabeza" ;
+ heart_N = mkN "corazón" "corazones" masculine ;
+ horn_N = regN "cuerno" ;
+ husband_N = regN "marido" ; -- esposo
+ ice_N = regN "hielo" ;
+ knee_N = regN "rodilla" ;
+ lake_N = lake_N ;
+ leaf_N = regN "hoja" ;
+ leg_N = regN "pierna" ;
+ liver_N = regN "hígado" ;
+ louse_N = regN "piojo" ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+ mother_N = UseN2 mother_N2 ;
+ mountain_N = mountain_N ;
+ mouth_N = regN "boca" ;
+ name_N = regN "nombre" ;
+ neck_N = regN "cuello" ;
+ night_N = femN (regN "noche") ;
+ nose_N = femN (regN "nariz") ;
+ person_N = regN "persona" ;
+ rain_N = regN "lluvia" ;
+ river_N = river_N ;
+ road_N = femN (regN "calle") ; -- camino
+ root_N = femN (regN "raíz") ;
+ rope_N = regN "cuerda" ;
+ salt_N = femN (regN "sal") ;
+ sand_N = regN "arena" ;
+ sea_N = sea_N ;
+ seed_N = regN "semilla" ;
+ skin_N = femN (regN "piel") ; -- fem
+ sky_N = regN "cielo" ;
+ smoke_N = regN "humo" ;
+ snake_N = snake_N ;
+ snow_N = femN (regN "nieve") ; -- fem
+ star_N = star_N ;
+ stick_N = mkN "bastón" "bastones" masculine ; -- palo
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = regN "cola" ;
+ tongue_N = regN "lengua" ;
+ tooth_N = regN "diente" ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = regN "esposa" ;
+ wind_N = regN "viento" ;
+ wing_N = regN "ala" ;
+ woman_N = woman_N ;
+ worm_N = regN "gusano" ; -- lombriz (fem)
+ year_N = regN "año" ;
+
+ -- Verbs
+
+ bite_V2 = dirV2 (verboV (morder_50b "morder")) ;
+ blow_V = regV "soplar" ;
+ breathe_V2 = dirV2 (regV "respirar") ;
+ burn_V = regV "quemar" ;
+ come_V = come_V ;
+ count_V2 = dirV2 (verboV (contar_38b "contar")) ;
+ cut_V2 = dirV2 (regV "cortar") ;
+ die_V = die_V ;
+ dig_V = regV "escarbar" ;
+ drink_V2 = dirV2 (regV "tomar") ;
+ eat_V2 = dirV2 (regV "comer") ;
+ fall_V = verboV (caer_20 "caer") ;
+ fear_V2 = dirV2 (fear_VS) ;
+ fight_V2 = dirV2 (regV "pelear") ;
+ float_V = regV "flotar" ;
+ flow_V = verboV (influir_45 "fluir") ; -- circular
+ fly_V = regV "volar" ;
+ freeze_V = regV "congelar" ;
+ give_V = dirdirV3 (verboV (dar_27 "dar")) ;
+ hear_V2 = dirV2 (hear_V2) ;
+ hit_V2 = dirV2 (regV "golpear") ;
+ hold_V2 = dirV2 (verboV (tener_4 "tener")) ;
+ hunt_V2 = dirV2 (regV "cazar") ;
+ kill_V2 = dirV2 (regV "matar") ;
+ know_V2 = dirV2 (know_V2) ;
+ laugh_V = regV "reir" ; ----V reír_67
+ lie_V = reflV (regV "acostar") ; -- "acostarse"
+ live_V = live_V ;
+ play_V = regV "jugar" ;
+ pull_V2 = dirV2 (regV "tirar") ;
+ push_V2 = dirV2 (regV "empujar") ;
+ rub_V2 = dirV2 (regV "resfregar") ;
+ say_V = say_VS ;
+ scratch_V2 = dirV2 (regV "rascar") ;
+ see_V2 = dirV2 (see_V2) ;
+ sew_V = regV "coser" ;
+ sing_V = regV "cantar" ;
+ sit_V = reflV (regV "sentar") ;
+ sleep_V = sleep_V ;
+ smell_V = verboV (oler_52 "oler") ;
+ spit_V = regV "escupir" ;
+ split_V2 = dirV2 (regV "separar") ; -- dividir,) ;
+ squeeze_V2 = dirV2 (regV "exprimir") ;
+ stab_V2 = dirV2 (regV "apuñalar") ;
+ stand_V = verboV (estar_2 "estar") ; ---- "estar de pie" ;
+ suck_V2 = dirV2 (regV "chupar") ;
+ swell_V = regV "tragar" ;
+ swim_V = regV "nadar" ;
+ think_V = regV "pensar" ;
+ throw_V2 = dirV2 (regV "tirar") ;
+ tie_V2 = dirV2 (regV "atar") ;
+ turn_V = regV "doblar" ;
+ vomit_V = regV "vomitar" ;
+ walk_V = regV "caminar" ;
+ wash_V2 = dirV2 (regV "lavar") ;
+ wipe_V2 = dirV2 (regV "secar") ;
+
+}
diff --git a/examples/bronzeage/old/SwadeshSwe.gf b/examples/bronzeage/old/SwadeshSwe.gf
new file mode 100644
index 000000000..be548b07f
--- /dev/null
+++ b/examples/bronzeage/old/SwadeshSwe.gf
@@ -0,0 +1,252 @@
+--# -path=.:present:prelude
+
+concrete SwadeshSwe of Swadesh = CatSwe
+ ** open MorphoSwe, LangSwe, ParadigmsSwe, IrregSwe, Prelude in {
+
+ lincat
+ MassN = N ;
+
+ lin
+
+ -- Pronouns
+
+ i_NP = i_Pron ;
+ youSg_NP = youSg_Pron ;
+ he_NP = he_Pron ;
+ we_NP = we_Pron ;
+ youPl_NP = youPl_Pron ;
+ they_NP = they_Pron ;
+ whoPl_IP = whoPl_IP ;
+ whoSg_IP = whoSg_IP ;
+ whatPl_IP = whatPl_IP ;
+ whatSg_IP = whatSg_IP ;
+
+ -- Determiners
+
+ this_Det = DetSg (SgQuant this_Quant) NoOrd ;
+ that_Det = DetSg (SgQuant that_Quant) NoOrd ;
+ all_Det = {s = \\_,_ => "alla" ; n = Pl ; det = DDef Indef} ;
+ many_Det = many_Det ;
+ some_Det = someSg_Det ;
+ few_Det = {s = \\_,_ => "få" ; n = Pl ; det = DDef Indef} ;
+ other_Det = {s = \\_,_ => "andra" ; n = Pl ; det = DDef Indef} ;
+
+ left_Ord = {s = "vänstra" ; isDet = True} ;
+ right_Ord = {s = "högra" ; isDet = True} ;
+
+ -- Adverbs
+
+ here_Adv = here_Adv ;
+ there_Adv = there_Adv ;
+ where_IAdv = where_IAdv ;
+ when_IAdv = when_IAdv ;
+ how_IAdv = how_IAdv ;
+ far_Adv = mkAdv "långt" ;
+
+ -- not : Adv ; -- ?
+
+ -- Conjunctions
+
+ and_Conj = and_Conj ;
+
+ -- Prepositions
+
+ at_Prep = ss "vid" ;
+ in_Prep = ss "i" ;
+ with_Prep = ss "med" ;
+
+ -- Numerals
+
+ one_Det = DetSg one_Quant NoOrd ;
+ two_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ;
+ three_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ;
+ four_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ;
+ five_Num = NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ;
+
+ -- Adjectives
+
+ bad_A = bad_A ;
+ big_A = big_A ;
+ black_A = black_A ;
+ cold_A = cold_A ;
+ correct_A = regA "riktig" ;
+ dirty_A = dirty_A ;
+ dry_A = regA "torr" ;
+ dull_A = mk2A "slö" "slött";
+ full_A = regA "full" ;
+ good_A = good_A ;
+ green_A = green_A ;
+ heavy_A = irregA "tung" "tyngre" "tyngst" ;
+ long_A = long_A ;
+ narrow_A = narrow_A ;
+ near_A = mkA "nära" "nära" "nära" "nära"
+ "närmare" "närmast" "närmaste" ;
+ new_A = new_A ;
+ old_A = old_A ;
+ red_A = red_A ;
+ rotten_A = mk3A "rutten" "ruttet" "ruttna" ;
+ round_A = regA "rund" ;
+ sharp_A = regA "vass" ;
+ short_A = short_A ;
+ small_A = small_A ;
+ smooth_A = regA "slät" ;
+ straight_A = regA "rak" ;
+ thick_A = thick_A ;
+ thin_A = thin_A ;
+ warm_A = warm_A ;
+ wet_A = regA "våt" ;
+ white_A = white_A ;
+ wide_A = mk2A "bred" "brett" ;
+ yellow_A = yellow_A ;
+
+
+ -- Nouns
+
+ animal_N = mk2N "djur" "djur" ;
+ ashes_N = mk2N "aska" "askor" ;
+ back_N = mk2N "rygg" "ryggar" ;
+ bark_N = mk2N "bark" "barkar" ;
+ belly_N = mk2N "mage" "magar" ;
+ bird_N = bird_N ;
+ blood_N = mk2N "blod" "blod" ;
+ bone_N = mk2N "ben" "ben" ;
+ breast_N = mk2N "bröst" "bröst" ;
+ child_N = child_N ;
+ cloud_N = mk2N "moln" "moln" ;
+ day_N = mk2N "dag" "dagar" ;
+ dog_N = dog_N ;
+ dust_N = mk2N "damm" "damm" ;
+ ear_N = mkN "öra" "örat" "öron" "öronen" ;
+ earth_N = mk2N "jord" "jordar" ;
+ egg_N = mk2N "ägg" "ägg" ;
+ eye_N = mkN "öga" "ögat" "ögon" "ögonen" ;
+ fat_N = mk2N "fett" "fett" ;
+ father_N = (mkN "far" "fadern" "fäder" "fäderna") ;
+-- father_N = UseN2 father_N2 ;
+ feather_N = mk2N "fjäder" "fjädrar" ;
+ fingernail_N = mkN "nagel" "nageln" "naglar" "naglarna";
+ fire_N = mk2N "eld" "eldar" ;
+ fish_N = fish_N ;
+ flower_N = mk2N "blomma" "blommor" ;
+ fog_N = mk2N "dimma" "dimmor" ;
+ foot_N = mk2N "fot" "fötter" ;
+ forest_N = mk2N "skog" "skogar" ;
+ fruit_N = fruit_N ;
+ grass_N = mk2N "gräs" "gräs" ;
+ guts_N = mk2N "inälva" "inälvor" ;
+ hair_N = mk2N "hår" "hår" ;
+ hand_N = mk2N "hand" "händer" ;
+ head_N = mkN "huvud" "huvudet" "huvuden" "huvudena" ;
+ heart_N = mkN "hjärta" "hjärtat" "hjärtan" "hjärtana" ;
+ horn_N = mk2N "horn" "horn" ;
+ husband_N = (mk2N "make" "makar") ;
+ ice_N = mk2N "is" "isar" ;
+ knee_N = mkN "knä" "knäet" "knän" "knäna" ;
+ lake_N = lake_N ;
+ leaf_N = mk2N "löv" "löv" ;
+ leg_N = mk2N "ben" "ben" ;
+ liver_N = mkN "lever" "levern" "levrar" "levrarna";
+ louse_N = mkN "lus" "lusen" "löss" "lössen" ;
+ man_N = man_N ;
+ meat_N = meat_N ;
+ moon_N = moon_N ;
+ mother_N = mkN "mor" "modern" "mödrar" "mödrarna" ;
+-- mother_N = UseN2 mother_N2 ;
+ mountain_N = mountain_N ;
+ mouth_N = mkN "mun" "munnen" "munnar" "munnarna" ;
+ name_N = mk2N "namn" "namn" ;
+ neck_N = mk2N "nacke" "nackar" ;
+ night_N = mk2N "natt" "nätter" ;
+ nose_N = mk2N "näsa" "näsor" ;
+ person_N = mk2N "person" "personer" ;
+ rain_N = mk2N "regn" "regn" ;
+ river_N = river_N ;
+ road_N = mk2N "väg" "vägar" ;
+ root_N = mk2N "rot" "rötter" ;
+ rope_N = mk2N "rep" "rep" ;
+ salt_N = mkN "salt" "saltet" "salter" "salterna";
+ sand_N = mk2N "sand" "sander" ;
+ sea_N = sea_N ;
+ seed_N = mkN "frö" "fröet" "frön" "fröna" ;
+ skin_N = mk2N "skinn" "skinn" ;
+ sky_N = mk2N "himmel" "himlar" ;
+ smoke_N = mk2N "rök" "rökar" ;
+ snake_N = snake_N ;
+ snow_N = mkN "snö" "snön" "snöer" "snöerna" ;
+ star_N = star_N ;
+ stick_N = mk2N "pinne" "pinnar" ;
+ stone_N = stone_N ;
+ sun_N = sun_N ;
+ tail_N = mk2N "svans" "svansar" ;
+ tongue_N = mk2N "tunga" "tungor" ;
+ tooth_N = mk2N "tand" "tänder" ;
+ tree_N = tree_N ;
+ water_N = water_N ;
+ wife_N = mk2N "fru" "fruar" ;
+ wind_N = mk2N "vind" "vindar" ;
+ wing_N = mk2N "vinge" "vingar" ;
+ woman_N = woman_N ;
+ worm_N = mk2N "mask" "maskar" ;
+ year_N = mk2N "år" "år" ;
+
+ -- Verbs
+
+ bite_V2 = dirV2 (bita_V) ;
+ blow_V = mk2V "blåsa" "blåste" ;
+ breathe_V2 = dirV2 (depV (regV "anda")) ;
+ burn_V = brinna_V ; -- FIXME: bränna?
+ come_V = komma_V ;
+ count_V2 = dirV2 (regV "räkna") ;
+ cut_V2 = dirV2 (skära_V) ;
+ die_V = dö_V ;
+ dig_V = mk2V "gräva" "grävde" ;
+ drink_V2 = dirV2 (dricka_V) ;
+ eat_V2 = dirV2 (äta_V) ;
+ fall_V = falla_V ;
+ fear_V2 = dirV2 (regV "frukta") ;
+ -- FIXME: passive forms are very strange
+ fight_V = mkV2 (mkV "slåss" "slåss" "slåss" "slogs" "slagits" "slagen") "med" ;
+ float_V = flyta_V ;
+ flow_V = rinna_V ;
+ fly_V = flyga_V ;
+ freeze_V = frysa_V ;
+ give_V = dirV3 giva_V "till";
+ hear_V2 = dirV2 (mk2V "höra" "hörde") ;
+ hit_V2 = dirV2 (slå_V) ;
+ hold_V2 = dirV2 (hålla_V) ;
+ hunt_V2 = dirV2 (regV "jaga") ;
+ kill_V2 = dirV2 (regV "döda") ;
+ know_V2 = dirV2 (känna_V) ;
+ laugh_V = regV "skratta" ;
+ lie_V = ligga_V ;
+ live_V = leva_V ;
+ play_V = mk2V "leka" "lekte" ;
+ pull_V2 = dirV2 (draga_V) ;
+ push_V2 = dirV2 (mk2V "trycka" "tryckte") ;
+ rub_V2 = dirV2 (gnida_V) ;
+ say_V = säga_V ;
+ scratch_V2 = dirV2 (regV "klia") ;
+ see_V2 = dirV2 (se_V) ;
+ sew_V = sy_V ;
+ sing_V = sjunga_V ;
+ sit_V = sitta_V ;
+ sleep_V = sova_V ;
+ smell_V = regV "lukta" ;
+ spit_V = regV "spotta" ;
+ split_V2 = dirV2 (klyva_V) ;
+ squeeze_V2 = dirV2 (klämma_V) ;
+ stab_V2 = dirV2 (sticka_V) ;
+ stand_V = stå_V ;
+ suck_V2 = dirV2 (suga_V) ;
+ swell_V = svälla_V ;
+ swim_V = regV "simma" ;
+ think_V = mk2V "tänka" "tänkte" ;
+ throw_V2 = dirV2 (regV "kasta") ;
+ tie_V2 = dirV2 (knyta_V) ;
+ turn_V = vända_V ;
+ vomit_V = mk2V "spy" "spydde" ;
+ walk_V = gå_V ;
+ wash_V2 = dirV2 (regV "tvätta") ;
+ wipe_V2 = dirV2 (regV "torka") ;
+
+}
diff --git a/lib/resource-1.0/abstract/Lexicon.gf b/lib/resource-1.0/abstract/Lexicon.gf
index 837fac26f..3d82e1eec 100644
--- a/lib/resource-1.0/abstract/Lexicon.gf
+++ b/lib/resource-1.0/abstract/Lexicon.gf
@@ -1,47 +1,47 @@
---1 A Lexicon Lexicon
-
--- This files gives a list of words whose purpose is to test the GF
--- resource grammar. It covers all lexical categories of [Cat Cat.html].
--- By containing some of the most common words,
--- it is aimed to cover, with high probability, all morphological
--- patterns in the different languages.
-
--- Using this lexicon for translation is not recommended. The linearizations
--- of the words in different languages are not guaranteed to be translation
--- equivalents.
-
abstract Lexicon = Cat ** {
- fun
+fun
add_V3 : V3 ;
airplane_N : N ;
already_Adv : Adv ;
+ animal_N : N ;
answer_V2S : V2 ;
apartment_N : N ;
apple_N : N ;
art_N : N ;
+ ashes_N : N ;
ask_V2Q : V2 ;
baby_N : N ;
+ back_N : N ;
bad_A : A ;
bank_N : N ;
+ bark_N : N ;
beautiful_A : A ;
become_VA : VA ;
beer_N : N ;
beg_V2V : V2 ;
+ belly_N : N ;
big_A : A ;
bike_N : N ;
bird_N : N ;
+ bite_V2 : V2 ;
black_A : A ;
+ blood_N : N ;
+ blow_V : V ;
blue_A : A ;
boat_N : N ;
+ bone_N : N ;
book_N : N ;
boot_N : N ;
boss_N : N ;
boy_N : N ;
bread_N : N ;
break_V2 : V2 ;
+ breast_N : N ;
+ breathe_V : V ;
broad_A : A ;
brother_N2 : N2 ;
brown_A : A ;
+ burn_V : V ;
butter_N : N ;
buy_V2 : V2 ;
camera_N : N ;
@@ -58,82 +58,147 @@ abstract Lexicon = Cat ** {
clean_A : A ;
clever_A : A ;
close_V2 : V2 ;
+ cloud_N : N ;
coat_N : N ;
cold_A : A ;
come_V : V ;
computer_N : N ;
+ correct_A : A ;
country_N : N ;
+ count_V2 : V2 ;
cousin_N : N ;
cow_N : N ;
+ cut_V2 : V2 ;
+ day_N : N ;
die_V : V ;
+ dig_V : V ;
dirty_A : A ;
distance_N3 : N3 ;
- do_V2 : V2 ;
doctor_N : N ;
dog_N : N ;
door_N : N ;
+ do_V2 : V2 ;
drink_V2 : V2 ;
+ drink_V2 : V2 ;
+ dry_A : A ;
+ dull_A : A ;
+ dust_N : N ;
+ ear_N : N ;
+ earth_N : N ;
easy_A2V : A2 ;
eat_V2 : V2 ;
- enemy_N : N ;
+ eat_V2 : V2 ;
+ egg_N : N ;
empty_A : A ;
+ enemy_N : N ;
+ eye_N : N ;
factory_N : N ;
+ fall_V : V ;
+ far_Adv : Adv ;
father_N2 : N2 ;
+ fat_N : N ;
fear_VS : VS ;
+ fear_V2 : V2 ;
+ feather_N : N ;
+ fight_V2 : V2 ;
find_V2 : V2 ;
+ fingernail_N : N ;
+ fire_N : N ;
fish_N : N ;
+ float_V : V ;
floor_N : N ;
+ flower_N : N ;
+ flow_V : V ;
+ fly_V : V ;
+ fog_N : N ;
+ foot_N : N ;
+ forest_N : N ;
forget_V2 : V2 ;
+ freeze_V : V ;
fridge_N : N ;
friend_N : N ;
fruit_N : N ;
+ full_A : A ;
+ fun
fun_AV : A ;
garden_N : N ;
girl_N : N ;
+ give_V3 : V3 ;
glove_N : N ;
gold_N : N ;
good_A : A ;
go_V : V ;
+ grass_N : N ;
green_A : A ;
+ guts_N : N ;
+ hair_N : N ;
+ hand_N : N ;
harbour_N : N ;
hate_V2 : V2 ;
hat_N : N ;
have_V2 : V2 ;
+ head_N : N ;
+ heart_N : N ;
hear_V2 : V2 ;
+ hear_V2 : V2 ;
+ heavy_A : A ;
hill_N : N ;
+ hit_V2 : V2 ;
+ hold_V2 : V2 ;
hope_VS : VS ;
+ horn_N : N ;
horse_N : N ;
hot_A : A ;
house_N : N ;
+ hunt_V2 : V2 ;
+ husband_N : N ;
+ ice_N : N ;
important_A : A ;
industry_N : N ;
iron_N : N ;
jump_V : V ;
+ kill_V2 : V2 ;
king_N : N ;
+ knee_N : N ;
+ know_V2 : V2 ;
know_V2 : V2 ;
lake_N : N ;
lamp_N : N ;
+ laugh_V : V ;
+ leaf_N : N ;
learn_V2 : V2 ;
leather_N : N ;
leave_V2 : V2 ;
+ left_Ord : Ord ;
+ leg_N : N ;
+ lie_V : V ;
like_V2 : V2 ;
listen_V2 : V2 ;
+ liver_N : N ;
live_V : V ;
long_A : A ;
lose_V2 : V2 ;
+ louse_N : N ;
love_N : N ;
love_V2 : V2 ;
man_N : N ;
married_A2 : A2 ;
meat_N : N ;
+ meat_N : N ;
milk_N : N ;
moon_N : N ;
mother_N2 : N2 ;
mountain_N : N ;
+ mouth_N : N ;
music_N : N ;
+ name_N : N ;
narrow_A : A ;
+ near_A : A ;
+ neck_N : N ;
new_A : A ;
newspaper_N : N ;
+ night_N : N ;
+ nose_N : N ;
now_Adv : Adv ;
number_N : N ;
oil_N : N ;
@@ -144,33 +209,52 @@ abstract Lexicon = Cat ** {
paris_PN : PN ;
peace_N : N ;
pen_N : N ;
+ person_N : N ;
planet_N : N ;
plastic_N : N ;
play_V2 : V2 ;
+ play_V : V ;
policeman_N : N ;
priest_N : N ;
probable_AS : A ;
+ pull_V2 : V2 ;
+ push_V2 : V2 ;
put_V2 : V2 ;
queen_N : N ;
radio_N : N ;
+ rain_N : N ;
rain_V0 : V ;
read_V2 : V2 ;
red_A : A ;
religion_N : N ;
restaurant_N : N ;
+ right_Ord : Ord ;
river_N : N ;
+ road_N : N ;
rock_N : N ;
roof_N : N ;
+ root_N : N ;
+ rope_N : N ;
+ rotten_A : A ;
+ round_A : A ;
rubber_N : N ;
+ rub_V2 : V2 ;
run_V : V ;
+ salt_N : N ;
+ sand_N : N ;
say_VS : VS ;
school_N : N ;
science_N : N ;
+ scratch_V2 : V2 ;
sea_N : N ;
+ seed_N : N ;
seek_V2 : V2 ;
see_V2 : V2 ;
+ see_V2 : V2 ;
sell_V3 : V3 ;
send_V3 : V3 ;
+ sew_V : V ;
+ sharp_A : A ;
sheep_N : N ;
ship_N : N ;
shirt_N : N ;
@@ -178,52 +262,87 @@ abstract Lexicon = Cat ** {
shop_N : N ;
short_A : A ;
silver_N : N ;
+ sing_V : V ;
sister_N : N ;
+ sit_V : V ;
+ skin_N : N ;
+ sky_N : N ;
sleep_V : V ;
small_A : A ;
+ smell_V : V ;
+ smoke_N : N ;
+ smooth_A : A ;
snake_N : N ;
+ snow_N : N ;
sock_N : N ;
song_N : N ;
speak_V2 : V2 ;
+ spit_V : V ;
+ split_V2 : V2 ;
+ squeeze_V2 : V2 ;
+ stab_V2 : V2 ;
+ stand_V : V ;
star_N : N ;
steel_N : N ;
+ stick_N : N ;
stone_N : N ;
stop_V : V ;
stove_N : N ;
+ straight_A : A ;
student_N : N ;
stupid_A : A ;
+ suck_V2 : V2 ;
sun_N : N ;
+ swell_V : V ;
+ swim_V : V ;
switch8off_V2 : V2 ;
switch8on_V2 : V2 ;
table_N : N ;
+ tail_N : N ;
talk_V3 : V3 ;
teacher_N : N ;
teach_V2 : V2 ;
television_N : N ;
thick_A : A ;
thin_A : A ;
+ think_V : V ;
+ throw_V2 : V2 ;
+ tie_V2 : V2 ;
+ tongue_N : N ;
+ tooth_N : N ;
train_N : N ;
travel_V : V ;
tree_N : N ;
- ---- trousers_N : N ;
+ turn_V : V ;
ugly_A : A ;
understand_V2 : V2 ;
university_N : N ;
village_N : N ;
+ vomit_V : V ;
wait_V2 : V2 ;
walk_V : V ;
warm_A : A ;
war_N : N ;
+ wash_V2 : V2 ;
watch_V2 : V2 ;
water_N : N ;
+ water_N : N ;
+ wet_A : A ;
white_A : A ;
+ wide_A : A ;
+ wife_N : N ;
+ wind_N : N ;
window_N : N ;
wine_N : N ;
+ wing_N : N ;
win_V2 : V2 ;
+ wipe_V2 : V2 ;
woman_N : N ;
wonder_VQ : VQ ;
wood_N : N ;
+ worm_N : N ;
write_V2 : V2 ;
+ year_N : N ;
yellow_A : A ;
young_A : A ;
diff --git a/lib/resource-1.0/abstract/Structural.gf b/lib/resource-1.0/abstract/Structural.gf
index 477f969f7..ea3fe0301 100644
--- a/lib/resource-1.0/abstract/Structural.gf
+++ b/lib/resource-1.0/abstract/Structural.gf
@@ -38,6 +38,7 @@ abstract Structural = Cat ** {
everything_NP : NP ;
everywhere_Adv : Adv ;
first_Ord : Ord ;
+ few_Det : Det ;
from_Prep : Prep ;
he_Pron : Pron ;
here_Adv : Adv ;
diff --git a/lib/resource-1.0/doc/clt2006.html b/lib/resource-1.0/doc/clt2006.html
index 4ee440495..b7e180545 100644
--- a/lib/resource-1.0/doc/clt2006.html
+++ b/lib/resource-1.0/doc/clt2006.html
@@ -7,7 +7,7 @@
The GF Resource Grammar Library Version 1.0
Author: Aarne Ranta <aarne (at) cs.chalmers.se>
-Last update: Sat Mar 4 14:20:07 2006
+Last update: Tue Mar 7 16:01:46 2006
@@ -274,9 +274,7 @@ Rosetta Machine Translation (B
Coverage
-
-===Languages====
-
+Languages
The current GF Resource Project covers ten languages:
@@ -302,9 +300,7 @@ API 1.0 not yet implemented for Danish and Russian
-
-===Morphology====
-
+Morphology and lexicon
Complete inflection engine
@@ -315,24 +311,20 @@ Complete inflection engine
-High-level access via ParadigmsX; e.g. Swedish:
+Basic lexicon
-- worst-case functions
-
- mkV : (supa,super,sup,söp,supit,supen : Str) -> V ;
-
- - common patterns
-
- regV : (talar : Str) -> V ;
- irregV : (dricka, drack, druckit : Str) -> V ;
-
- - irregular words in
IrregX:
-
- draga_V : V =
- mkV (variants { "dra"; "draga"}) (variants { "drar" ; "drager"})
- (variants { "dra" ; "drag" }) "drog" "dragit" "dragen" ;
-
+ - 100 structural words
+
- 350 content words, mainly for testing
+
- these include the 207 Swadesh words
+
+
+
+It is more important to enable lexicon extensions than to
+provide a huge lexicon.
+
+
+- technical lexica can have very special words, which tend to be regular
@@ -340,7 +332,32 @@ High-level access via ParadigmsX; e.g. Swedish:
Syntactic structures
-
+Texts:
+sequences of phrases with punctuation
+
+
+Phrases:
+declaratives, questions, imperatives, vocatives
+
+
+Tense, mood, and polarity:
+present, past, future, conditional ; similtaneous, anterior ; positive, negative
+
+
+Questions:
+yes-no, "wh" ; direct, indirect
+
+
+Clauses:
+main, relative, embedded (subject, object, adverbial)
+
+
+Verb phrases:
+intransitive, transitive, ditransitive, prepositional
+
+
+Noun phrases:
+proper names, pronouns, determiners, possessives, cardinals and ordinals
@@ -378,15 +395,125 @@ Lines of source code (4/3/2006):
-Structure
+Structure of the API
+Language-independent ground API
+
+
+
-Language-independent ground API
+The structure of a text sentence
+
+ John walks.
+
+ TFullStop : Phr -> Text -> Text
+ (PhrUtt : PConj -> Utt -> Voc -> Phr
+ NoPConj
+ (UttS : S -> Utt
+ (UseCl : Tense -> Anter -> Pol -> Cl -> S
+ TPres
+ ASimul
+ PPos
+ (PredVP : NP -> VP -> Cl
+ (UsePN : PN -> NP
+ john_PN)
+ (UseV : V -> VP
+ walk_V))))
+ NoVoc)
+ TEmpty
+
+
+
+
+
+Structure in syntax editor
+
+
+
Language-dependent paradigm modules
+Regular paradigms
+
+Every language implements these regular patterns that take
+"dictionary forms" as arguments.
+
+
+ regN : Str -> N
+ regA : Str -> A
+ regV : Str -> V
+
+
+Their usefulness varies. For instance, they
+all are quite good in Finnish and English.
+In Swedish, less so:
+
+
+ regN "val" ---> val, valen, valar, valarna
+
+
+Initializing a lexicon with regXs is
+usually a good starting point in grammar development.
+
+
+
+
+Regular paradigms
+
+In Swedish, giving the gender of N improves a lot
+
+
+ regGenN "val" neutrum ---> val, valet, val, valen
+
+
+
+There are also special constructs taking other forms:
+
+
+ mk2N : (nyckel,nycklar : Str) -> N
+ mk1N : (bilarna : Str) -> N
+
+ irregV : (dricka, drack, druckit : Str) -> V
+
+
+
+Regular verbs are actually implemented the
+Lexin way
+
+
+ regV : (talar : Str) -> N
+
+
+
+
+
+Worst-case paradigms
+
+To cover all situations, worst-case paradigms are given. E.g. Swedish
+
+
+ mkN : (apa,apan,apor,aporna : Str) -> N
+ mkA : (liten, litet, lilla, sma, mindre, minst, minsta : Str) -> A
+ mkV : (supa,super,sup,söp,supit,supen : Str) -> V
+
+
+
+
+
+Irregular words
+
+Iregular words in IrregX, e.g. Swedish:
+
+
+ draga_V : V =
+ mkV (variants { "dra"; "draga"}) (variants { "drar" ; "drager"})
+ (variants { "dra" ; "drag" }) "drog" "dragit" "dragen" ;
+
+
+Goal: eliminate the user's need of worst-case functions.
+
@@ -395,6 +522,20 @@ Lines of source code (4/3/2006):
Special-purpose APIs
+
+Syntactic structures that are not shared by all languages.
+
+
+Not implemented yet.
+
+
+Candidates:
+
+
+Nor post-possessives: bilen min
+Fre question forms: est-ce que tu dors ?
+
+
@@ -402,20 +543,127 @@ Lines of source code (4/3/2006):
+Compiling
+
+It is a good idea to compile the library, so that it can be opened faster
+
+
+ GF/lib/resource-1.0% make
+
+ writes GF/lib/alltenses
+ GF/lib/present
+ GF/lib/resource-1.0/langs.gfcm
+
+
+If you don't intend to change the library, you never need to process the source
+files again. Just do some of
+
+
+ gf -nocf langs.gfcm -- all 8 languages
+
+ gf -nocf -path=alltenses:prelude alltenses/LangSwe.gfc -- Swedish only
+
+ gf -nocf -path=alltenses:prelude present/LangSwe.gfc -- Swedish only, present tense only
+
+
+
+
+
Parsing
+The default parser does not work!
+
+
+The MCFG parser works in some languages, after waiting appr. 20 seconds
+
+
+ p -mcfg -lang=LangEng -cat=S "I would see her"
+
+ p -mcfg -lang=LangSwe -cat=S "jag skulle se henne"
+
+ p -mcfg -lang=LangNor -cat=S "jeg ville se henne"
+
+
+
+Parsing in present/ versions is quicker.
+
+
Treebank generation
+Multilingual treebank entry = tree + linearizations
+
+
+Some examples on treebank generation, assuming langs.gfcm
+
+
+ gr -cat=S -number=10 -cf | tb -- 10 random S
+
+ gt -cat=Phr -depth=4 | tb -xml | wf ex.xml -- all Phr to depth 4, into file ex.xml
+
+
+Regression testing
+
+
+ rf ex.xml | tb -c -- read treebank from file and compare to present grammars
+
+
+Updating a treebank
+
+
+ rf old.xml | tb -trees | tb -xml | wf new.xml -- read old from file, write new to file
+
+
+
Treebank-based parsing
+Brute-force method that helps if real parsing is more expensive.
+
+
+ make treebank -- make treebank with all languages
+
+ gf -treebank langs.xml -- start GF by reading the treebank
+
+ > ut -strings -treebank=LangIta -- show all Ita strings
+
+ > ut -treebank=LangIta -raw "Quello non si romperebbe" -- look up a string
+
+ > i -nocf langs.gfcm -- read grammar to be able to linearize
+
+ > ut -treebank=LangIta "Quello non si romperebbe" | l -multi -- translate to all
+
+
+
Morphology
+Use morphological analyser
+
+
+ gf -nocf -retain -path=alltenses:prelude alltenses/LangSwe.gf
+ > ma "jag kan inte höra vad du säger"
+
+
+
+Try out a morphology quiz
+
+
+ > mq -cat=V
+
+
+
+Try out inflection patterns
+
+
+ gf -retain -path=alltenses:prelude alltenses/ParadigmsSwe.gfr
+ > cc regV "lyser"
+
+
+
@@ -423,6 +671,16 @@ Lines of source code (4/3/2006):
Syntax editing
+We start a demo by
+
+
+ gfeditor langs.gfcm
+
+
+
+
+
+
Efficient parsing via application grammar
@@ -469,6 +727,6 @@ Lines of source code (4/3/2006):
Extend old modules or add a new one?
-
+