From d713840556306b04f9dc1afc791c035e8563fe1a Mon Sep 17 00:00:00 2001 From: aarne Date: Mon, 18 Jun 2007 19:14:32 +0000 Subject: [PATCH] disambiguating qualifications in Bronzeage --- examples/bronzeage/BronzeageI.gf | 18 +- examples/bronzeage/SwadeshI.gf | 400 +++++++++++++++---------------- 2 files changed, 208 insertions(+), 210 deletions(-) diff --git a/examples/bronzeage/BronzeageI.gf b/examples/bronzeage/BronzeageI.gf index 57590c569..86def573a 100644 --- a/examples/bronzeage/BronzeageI.gf +++ b/examples/bronzeage/BronzeageI.gf @@ -28,14 +28,14 @@ incomplete concrete BronzeageI of Bronzeage = open Lang in { ImpV v = ImpVP (UseV v) ; ImpV2 v x = ImpVP (ComplV2 v x) ; - UsePron p = UsePron p ; - DetCN d n = DetCN d n ; - NumCN k cn = DetCN (DetPl (PlQuant IndefArt) k NoOrd) cn ; + UsePron p = Lang.UsePron p ; + DetCN d n = Lang.DetCN d n ; + NumCN k cn = Lang.DetCN (DetPl (PlQuant IndefArt) k NoOrd) cn ; - UseN n = UseN n ; + UseN n = Lang.UseN n ; ModCN a cn = AdjCN (PositA a) cn ; - UseMassN mn = UseN mn ; + UseMassN mn = Lang.UseN mn ; ModMass a cn = AdjCN (PositA a) cn ; param @@ -47,13 +47,13 @@ incomplete concrete BronzeageI of Bronzeage = open Lang in { let cl = PredVP np vp in { s = table { - SPos => Predef.toStr S (UseCl TPres ASimul PPos cl) ; - SNeg => Predef.toStr S (UseCl TPres ASimul PNeg cl) ; - SQuest => Predef.toStr QS (UseQCl TPres ASimul PPos (QuestCl cl)) + SPos => Predef.toStr S (UseCl Lang.TPres ASimul PPos cl) ; + SNeg => Predef.toStr S (UseCl Lang.TPres ASimul PNeg cl) ; + SQuest => Predef.toStr QS (UseQCl Lang.TPres ASimul PPos (QuestCl cl)) } ; lock_Sent = <> } ; - massNP : CN -> NP = \mcn -> DetCN (DetSg MassDet NoOrd) mcn ; + massNP : CN -> NP = \mcn -> Lang.DetCN (DetSg MassDet NoOrd) mcn ; } diff --git a/examples/bronzeage/SwadeshI.gf b/examples/bronzeage/SwadeshI.gf index 01f1a43c2..a622bed2b 100644 --- a/examples/bronzeage/SwadeshI.gf +++ b/examples/bronzeage/SwadeshI.gf @@ -7,222 +7,220 @@ incomplete concrete SwadeshI of Swadesh = open Lang in { -- 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 ; + i_NP = Lang.i_Pron ; + youSg_NP = Lang.youSg_Pron ; + he_NP = Lang.he_Pron ; + we_NP = Lang.we_Pron ; + youPl_NP = Lang.youPl_Pron ; + they_NP = Lang.they_Pron ; + whoPl_IP = Lang.whoPl_IP ; + whoSg_IP = Lang.whoSg_IP ; + whatPl_IP = Lang.whatPl_IP ; + whatSg_IP = Lang.whatSg_IP ; -- Determiners this_Det = DetSg (SgQuant this_Quant) NoOrd ; that_Det = DetSg (SgQuant that_Quant) NoOrd ; - many_Det = many_Det ; + many_Det = Lang.many_Det ; some_Det = someSg_Det ; ---- few_Det = few_Det ; - left_Ord = left_Ord ; - right_Ord = right_Ord ; + left_Ord = Lang.left_Ord ; + right_Ord = Lang.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 ; + here_Adv = Lang.here_Adv; + there_Adv = Lang.there_Adv; + where_IAdv = Lang.where_IAdv; + when_IAdv = Lang.when_IAdv; + how_IAdv = Lang.how_IAdv; + far_Adv = Lang.far_Adv ; -- not : Adv ; -- ? -- Conjunctions - and_Conj = and_Conj ; + and_Conj = Lang.and_Conj ; -- Prepositions - in_Prep = in_Prep ; - with_Prep = with_Prep ; + in_Prep = Lang.in_Prep ; + with_Prep = Lang.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))))) ; + one_Det = Lang.DetSg one_Quant NoOrd ; + two_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n2))))) ; + three_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n3))))) ; + four_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n4))))) ; + five_Num = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 (pot0 n5))))) ; -- Adjectives - bad_A = 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 ; + bad_A = Lang.bad_A ; + big_A = Lang.big_A ; + black_A = Lang.black_A ; + cold_A = Lang.cold_A ; + correct_A = Lang.correct_A ; + dirty_A = Lang.dirty_A ; + dry_A = Lang.dry_A ; + dull_A = Lang.dull_A ; + full_A = Lang.full_A ; + good_A = Lang.good_A ; + green_A = Lang.green_A ; + heavy_A = Lang.heavy_A ; + long_A = Lang.long_A ; + narrow_A = Lang.narrow_A ; + near_A = Lang.near_A ; + new_A = Lang.new_A ; + old_A = Lang.old_A ; +---- other_A = Lang.other_A ; + red_A = Lang.red_A ; + rotten_A = Lang.rotten_A ; + round_A = Lang.round_A ; + sharp_A = Lang.sharp_A ; + short_A = Lang.short_A ; + small_A = Lang.small_A ; + smooth_A = Lang.smooth_A ; + straight_A = Lang.straight_A ; + thick_A = Lang.thick_A ; + thin_A = Lang.thin_A ; + warm_A = Lang.warm_A ; + wet_A = Lang.wet_A ; + white_A = Lang.white_A ; + wide_A = Lang.wide_A ; + yellow_A = Lang.yellow_A ; -- Nouns - animal_N = 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 ; + animal_N = Lang.animal_N ; + ashes_N = Lang.ashes_N ; + back_N = Lang.back_N ; + bark_N = Lang.bark_N ; + belly_N = Lang.belly_N ; + bird_N = Lang.bird_N; + blood_N = Lang.blood_N ; + bone_N = Lang.bone_N ; + breast_N = Lang.breast_N ; + child_N = Lang.child_N ; + cloud_N = Lang.cloud_N ; + day_N = Lang.day_N ; + dog_N = Lang.dog_N ; + dust_N = Lang.dust_N ; + ear_N = Lang.ear_N ; + earth_N = Lang.earth_N ; + egg_N = Lang.egg_N ; + eye_N = Lang.eye_N ; + fat_N = Lang.fat_N ; + feather_N = Lang.feather_N ; + fingernail_N = Lang.fingernail_N ; + fire_N = Lang.fire_N ; + fish_N = Lang.fish_N ; + flower_N = Lang.flower_N ; + fog_N = Lang.fog_N ; + foot_N = Lang.foot_N ; + forest_N = Lang.forest_N ; + fruit_N = Lang.fruit_N ; + grass_N = Lang.grass_N ; + guts_N = Lang.guts_N ; + hair_N = Lang.hair_N ; + hand_N = Lang.hand_N ; + head_N = Lang.head_N ; + heart_N = Lang.heart_N ; + horn_N = Lang.horn_N ; + husband_N = Lang.man_N ; --- aviomies + ice_N = Lang.ice_N ; + knee_N = Lang.knee_N ; + lake_N = Lang.lake_N ; + leaf_N = Lang.leaf_N ; + leg_N = Lang.leg_N ; + liver_N = Lang.liver_N ; + louse_N = Lang.louse_N ; + man_N = Lang.man_N ; + meat_N = Lang.meat_N ; + moon_N = Lang.moon_N ; +---- mother_N = Lang.mother_N ; + mountain_N = Lang.mountain_N ; + mouth_N = Lang.mouth_N ; + name_N = Lang.name_N ; + neck_N = Lang.neck_N ; + night_N = Lang.night_N ; + nose_N = Lang.nose_N ; + person_N = Lang.person_N ; + rain_N = Lang.rain_N ; + river_N = Lang.river_N ; + road_N = Lang.road_N ; + root_N = Lang.root_N ; + rope_N = Lang.rope_N ; + salt_N = Lang.salt_N ; + sand_N = Lang.sand_N ; + sea_N = Lang.sea_N ; + seed_N = Lang.seed_N ; + skin_N = Lang.skin_N ; + sky_N = Lang.sky_N ; + smoke_N = Lang.smoke_N ; + snake_N = Lang.snake_N ; + snow_N = Lang.snow_N ; + star_N = Lang.star_N ; + stick_N = Lang.stick_N ; + stone_N = Lang.stone_N ; + sun_N = Lang.sun_N ; + tail_N = Lang.tail_N ; + tongue_N = Lang.tongue_N ; + tooth_N = Lang.tooth_N ; + tree_N = Lang.tree_N ; + water_N = Lang.water_N ; + wife_N = Lang.wife_N ; + wind_N = Lang.wind_N ; + wing_N = Lang.wing_N ; + woman_N = Lang.woman_N ; + worm_N = Lang.worm_N ; + year_N = Lang.year_N ; -- Verbs - bite_V2 = 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 ; - - + bite_V2 = Lang.bite_V2 ; + blow_V = Lang.blow_V ; + breathe_V = Lang.breathe_V ; + burn_V = Lang.burn_V ; + come_V = Lang.come_V ; + count_V2 = Lang.count_V2 ; + cut_V2 = Lang.cut_V2 ; + die_V = Lang.die_V ; + dig_V = Lang.dig_V ; + drink_V2 = Lang.drink_V2 ; + eat_V2 = Lang.eat_V2 ; + fall_V = Lang.fall_V ; + fear_V2 = Lang.fear_V2 ; + fight_V2 = Lang.fight_V2 ; + float_V = Lang.float_V ; + flow_V = Lang.flow_V ; + fly_V = Lang.fly_V ; + freeze_V = Lang.freeze_V ; + give_V3 = Lang.give_V3 ; + hear_V2 = Lang.hear_V2 ; + hit_V2 = Lang.hit_V2 ; + hold_V2 = Lang.hold_V2 ; + hunt_V2 = Lang.hunt_V2 ; + kill_V2 = Lang.kill_V2 ; + know_V2 = Lang.know_V2 ; + laugh_V = Lang.laugh_V ; + lie_V = Lang.lie_V ; + live_V = Lang.live_V ; + play_V = Lang. play_V2 ; + pull_V2 = Lang.pull_V2 ; + push_V2 = Lang.push_V2 ; + rub_V2 = Lang.rub_V2 ; + say_V = Lang.say_VS ; + scratch_V2 = Lang.scratch_V2 ; + see_V2 = Lang.see_V2 ; + sew_V = Lang.sew_V ; + sing_V = Lang.sing_V ; + sit_V = Lang.sit_V ; + sleep_V = Lang.sleep_V ; + smell_V = Lang.smell_V ; + spit_V = Lang.spit_V ; + split_V2 = Lang.split_V2 ; + squeeze_V2 = Lang.squeeze_V2 ; + stab_V2 = Lang.stab_V2 ; + stand_V = Lang.stand_V ; + suck_V2 = Lang.suck_V2 ; + swell_V = Lang.swell_V ; + swim_V = Lang.swim_V ; + think_V = Lang.think_V ; + throw_V2 = Lang.throw_V2 ; + tie_V2 = Lang.tie_V2 ; + turn_V = Lang.turn_V ; + vomit_V = Lang.vomit_V ; + walk_V = Lang.walk_V ; + wash_V2 = Lang.wash_V2 ; + wipe_V2 = Lang.wipe_V2 ; }