diff --git a/examples/stoneage/Stoneage.gf b/examples/stoneage/Stoneage.gf new file mode 100644 index 000000000..a51d4af46 --- /dev/null +++ b/examples/stoneage/Stoneage.gf @@ -0,0 +1,246 @@ +abstract Stoneage = { + +cat + S ; + NP ; + CN ; + +fun + Drink : NP -> NP -> S ; + Eat : NP -> NP -> S ; + Bite : NP -> NP -> S ; + Suck : NP -> NP -> S ; + See : NP -> NP -> S ; + Hear : NP -> NP -> S ; + Know : NP -> NP -> S ; + Think : NP -> NP -> S ; + Smell : NP -> NP -> S ; + Fear : NP -> NP -> S ; + Kill : NP -> NP -> S ; + Fight : NP -> NP -> S ; + Hunt : NP -> NP -> S ; + Hit : NP -> NP -> S ; + Cut : NP -> NP -> S ; + Split : NP -> NP -> S ; + Stab : NP -> NP -> S ; + Scratch : NP -> NP -> S ; + Hold : NP -> NP -> S ; + Squeeze : NP -> NP -> S ; + Rub : NP -> NP -> S ; + Wash : NP -> NP -> S ; + Wipe : NP -> NP -> S ; + Pull : NP -> NP -> S ; + Push : NP -> NP -> S ; + Throw : NP -> NP -> S ; + Tie : NP -> NP -> S ; + Count : NP -> NP -> S ; + + Spit : NP -> S ; + Vomit : NP -> S ; + Blow : NP -> S ; + Breathe : NP -> S ; + Laugh : NP -> S ; + Sleep : NP -> S ; + Live : NP -> S ; + Die : NP -> S ; + Dig : NP -> S ; + Swim : NP -> S ; + Fly : NP -> S ; + Walk : NP -> S ; + Come : NP -> S ; + Lie : NP -> S ; + Sit : NP -> S ; + Stand : NP -> S ; + Turn : NP -> S ; + Fall : NP -> S ; + Sing : NP -> S ; + Sew : NP -> S ; + Play : NP -> S ; + Float : NP -> S ; + Flow : NP -> S ; + Freeze : NP -> S ; + Swell : NP -> S ; + Burn : NP -> S ; + +-- Say +-- FearThat + +-- Give : NP -> NP -> NP -> S ; + + The : CN -> NP ; + A : CN -> NP ; +-- This : CN -> NP ; +-- That : CN -> NP ; + All : CN -> NP ; + Many : CN -> NP ; + Some_One : CN -> NP ; + Some_Many : CN -> NP ; + Few : CN -> NP ; + Other : CN -> NP ; + + -- People + Woman : CN ; + Man : CN ; + Person : CN ; + Child : CN ; + Wife : CN ; + Husband : CN ; + Mother : CN ; + Father : CN ; + + -- Animals + Animal : CN ; + Fish : CN ; + Bird : CN ; + Dog : CN ; + Louse : CN ; + Snake : CN ; + Worm : CN ; + + -- Plants + Tree : CN ; + Forest : CN ; + Stick : CN ; + Fruit : CN ; + Seed : CN ; + Leaf : CN ; + Root : CN ; + Bark : CN ; + Flower : CN ; + Grass : CN ; + + -- Materials + Rope : CN ; + Skin : CN ; + Meat : CN ; + Blood : CN ; + Bone : CN ; + Fat : CN ; + Egg : CN ; + Horn : CN ; + Tail : CN ; + Feather : CN ; + + -- Body parts + Hair : CN ; + Head : CN ; + Ear : CN ; + Eye : CN ; + Nose : CN ; + Mouth : CN ; + Tooth : CN ; + Tongue : CN ; + Fingernail : CN ; + Foot : CN ; + Leg : CN ; + Knee : CN ; + Hand : CN ; + Wing : CN ; + Belly : CN ; + Guts : CN ; + Neck : CN ; + Back : CN ; + Breast : CN ; + Heart : CN ; + Liver : CN ; + + -- Heavenly bodies + Sun : CN ; + Moon : CN ; + Star : CN ; + + -- Water + Water : CN ; + Rain : CN ; + River : CN ; + Lake : CN ; + Sea : CN ; + + -- Minerals + Salt : CN ; + Stone : CN ; + Sand : CN ; + Dust : CN ; + Earth : CN ; + + -- Weather + Cloud : CN ; + Fog : CN ; + Sky : CN ; + Wind : CN ; + Snow : CN ; + Ice : CN ; + + -- Fire + Smoke : CN ; + Fire : CN ; + Ashes : CN ; + + -- Terrain + Road : CN ; + Mountain : CN ; + + -- Time + Night : CN ; + Day : CN ; + Year : CN ; + + Name : CN ; + +-- NameOf : NP -> CN ; + MotherOf : NP -> CN ; + FatherOf : NP -> CN ; + + -- Shape + Big : CN -> CN ; + Long : CN -> CN ; + Wide : CN -> CN ; + Thick : CN -> CN ; + Heavy : CN -> CN ; + Small : CN -> CN ; + Short : CN -> CN ; + Narrow : CN -> CN ; + Thin : CN -> CN ; + Straight : CN -> CN ; + Round : CN -> CN ; + + -- Color + Red : CN -> CN ; + Green : CN -> CN ; + Yellow : CN -> CN ; + White : CN -> CN ; + Black : CN -> CN ; + + -- Temperature + Warm : CN -> CN ; + Cold : CN -> CN ; + + Full : CN -> CN ; + + -- Age + New : CN -> CN ; + Old : CN -> CN ; + + -- Quality + Good : CN -> CN ; + Bad : CN -> CN ; + Rotten : CN -> CN ; + + -- Texture + Dirty : CN -> CN ; + Sharp : CN -> CN ; + Dull : CN -> CN ; + Smooth : CN -> CN ; + Wet : CN -> CN ; + Dry : CN -> CN ; + + -- Truthfulness + Correct : CN -> CN ; + + -- Position + Near : CN -> CN ; + -- Far : CN -> CN ; + Right : CN -> CN ; + Left : CN -> CN ; + +} \ No newline at end of file diff --git a/examples/stoneage/StoneageEng.gf b/examples/stoneage/StoneageEng.gf new file mode 100644 index 000000000..13a85f252 --- /dev/null +++ b/examples/stoneage/StoneageEng.gf @@ -0,0 +1,209 @@ +--# -path=.:../../lib/resource/abstract:../../lib/prelude:../../lib/resource/english +concrete StoneageEng of Stoneage + = open SyntaxEng, ResourceEng, SwadeshLexEng, StoneageResEng in { + +lincat + S = S ; + NP = NP ; + N = N; + CN = CN ; + +lin + Drink = PresVasV2 drink_V ; + Eat = PresVasV2 eat_V ; + Bite = PresVasV2 bite_V ; + Suck = PresVasV2 suck_V ; + See = PresVasV2 see_V ; + Hear = PresVasV2 hear_V ; + Know = PresVasV2 know_V ; + Think = PresVasV2 think_V ; + Smell = PresVasV2 smell_V ; + Fear = PresVasV2 fear_V ; + Kill = PresVasV2 kill_V ; + Fight = PresVasV2 fight_V ; + Hunt = PresVasV2 hunt_V ; + Hit = PresVasV2 hit_V ; + Cut = PresVasV2 cut_V ; + Split = PresVasV2 split_V ; + Stab = PresVasV2 stab_V ; + Scratch = PresVasV2 scratch_V ; + Hold = PresVasV2 hold_V ; + Squeeze = PresVasV2 squeeze_V ; + Rub = PresVasV2 rub_V ; + Wash = PresVasV2 wash_V ; + Wipe = PresVasV2 wipe_V ; + Pull = PresVasV2 pull_V ; + Push = PresVasV2 push_V ; + Throw = PresVasV2 throw_V ; + Tie = PresVasV2 tie_V ; + Count = PresVasV2 count_V ; + + Spit = PresV spit_V ; + Vomit = PresV vomit_V ; + Blow = PresV blow_V ; + Breathe = PresV breathe_V ; + Laugh = PresV laugh_V ; + Sleep = PresV sleep_V ; + Live = PresV live_V ; + Die = PresV die_V ; + Dig = PresV dig_V ; + Swim = PresV swim_V ; + Fly = PresV fly_V ; + Walk = PresV walk_V ; + Come = PresV come_V ; + Lie = PresV lie_V ; + Sit = PresV sit_V ; + Stand = PresV stand_V ; + Turn = PresV turn_V ; + Fall = PresV fall_V ; + Sing = PresV sing_V ; + Sew = PresV sew_V ; + Play = PresV play_V ; + Float = PresV float_V ; + Flow = PresV flow_V ; + Freeze = PresV freeze_V ; + Swell = PresV swell_V ; + Burn = PresV burn_V ; + +-- Say = ; +-- Give = giveV3 ; + + The = DefOneNP; + A = IndefOneNP ; + +-- This : CN -> NP ; +-- That : CN -> NP ; + All = NDetNP all_NDet NoNum ; + Many = DetNP many_Det ; + Some_One = DetNP some_Det ; + Some_Many = NDetNP some_NDet NoNum ; + Few = DetNP few_Det ; + Other = DetNP other_Det ; + + Woman = UseN woman_N ; + Man = UseN man_N ; + Person = UseN person_N ; + Child = UseN child_N ; + Wife = UseN wife_N ; + Husband = UseN husband_N ; + Mother = UseN2 mother_N2 ; + Father = UseN2 father_N2 ; + Animal = UseN animal_N ; + Fish = UseN fish_N ; + Bird = UseN bird_N ; + Dog = UseN dog_N ; + Louse = UseN louse_N ; + Snake = UseN snake_N ; + Worm = UseN worm_N ; + Tree = UseN tree_N ; + Forest = UseN forest_N ; + Stick = UseN stick_N ; + Fruit = UseN fruit_N ; + Seed = UseN seed_N ; + Leaf = UseN leaf_N ; + Root = UseN root_N ; + Bark = UseN bark_N ; + Flower = UseN flower_N ; + Grass = UseN grass_N ; + Rope = UseN rope_N ; + Skin = UseN skin_N ; + Meat = UseN meat_N ; + Blood = UseN blood_N ; + Bone = UseN bone_N ; + Fat = UseN fat_N ; + Egg = UseN egg_N ; + Horn = UseN horn_N ; + Tail = UseN tail_N ; + Feather = UseN feather_N ; + Hair = UseN hair_N ; + Head = UseN head_N ; + Ear = UseN ear_N ; + Eye = UseN eye_N ; + Nose = UseN nose_N ; + Mouth = UseN mouth_N ; + Tooth = UseN tooth_N ; + Tongue = UseN tongue_N ; + Fingernail = UseN fingernail_N ; + Foot = UseN foot_N ; + Leg = UseN leg_N ; + Knee = UseN knee_N ; + Hand = UseN hand_N ; + Wing = UseN wing_N ; + Belly = UseN belly_N ; + Guts = UseN guts_N ; + Neck = UseN neck_N ; + Back = UseN back_N ; + Breast = UseN breast_N ; + Heart = UseN heart_N ; + Liver = UseN liver_N ; + Sun = UseN sun_N ; + Moon = UseN moon_N ; + Star = UseN star_N ; + Water = UseN water_N ; + Rain = UseN rain_N ; + River = UseN river_N ; + Lake = UseN lake_N ; + Sea = UseN sea_N ; + Salt = UseN salt_N ; + Stone = UseN stone_N ; + Sand = UseN sand_N ; + Dust = UseN dust_N ; + Earth = UseN earth_N ; + Cloud = UseN cloud_N ; + Fog = UseN fog_N ; + Sky = UseN sky_N ; + Wind = UseN wind_N ; + Snow = UseN snow_N ; + Ice = UseN ice_N ; + Smoke = UseN smoke_N ; + Fire = UseN fire_N ; + Ashes = UseN ashes_N ; + Road = UseN road_N ; + Mountain = UseN mountain_N ; + Night = UseN night_N ; + Day = UseN day_N ; + Year = UseN year_N ; + Name = UseN name_N ; + +-- NameOf = AppN2 name_N2 ; + MotherOf = AppN2 mother_N2 ; + FatherOf = AppN2 father_N2 ; + + Big = ModPosA big_ADeg ; + Long = ModPosA long_ADeg ; + Wide = ModPosA wide_ADeg ; + Thick = ModPosA thick_ADeg ; + Heavy = ModPosA heavy_ADeg ; + Small = ModPosA small_ADeg ; + Short = ModPosA short_ADeg ; + Narrow = ModPosA narrow_ADeg ; + Thin = ModPosA thin_ADeg ; + Red = ModPosA red_ADeg ; + Green = ModPosA green_ADeg ; + Yellow = ModPosA yellow_ADeg ; + White = ModPosA white_ADeg ; + Black = ModPosA black_ADeg ; + Warm = ModPosA warm_ADeg ; + Cold = ModPosA cold_ADeg ; + Full = ModPosA full_ADeg ; + New = ModPosA new_ADeg ; + Old = ModPosA old_ADeg ; + Good = ModPosA good_ADeg ; + Bad = ModPosA bad_ADeg ; + Rotten = ModPosA rotten_ADeg ; + Dirty = ModPosA dirty_ADeg ; + Straight = ModPosA straight_ADeg ; + Round = ModPosA round_ADeg ; + Sharp = ModPosA sharp_ADeg ; + Dull = ModPosA dull_ADeg ; + Smooth = ModPosA smooth_ADeg ; + Wet = ModPosA wet_ADeg ; + Dry = ModPosA dry_ADeg ; + Correct = ModPosA correct_ADeg ; + Near = ModPosA near_ADeg ; +-- Far = ModPosA far_ADeg ; + + Right = ModAP (UseA right_A) ; + Left = ModAP (UseA left_A) ; + +} \ No newline at end of file diff --git a/examples/stoneage/StoneageResEng.gf b/examples/stoneage/StoneageResEng.gf new file mode 100644 index 000000000..7ea912902 --- /dev/null +++ b/examples/stoneage/StoneageResEng.gf @@ -0,0 +1,13 @@ +resource StoneageResEng = open ResourceEng, ParadigmsEng in { + +oper + PresV : V -> NP -> S = \v,s -> PresCl (SPredV s v) ; + PresV2 : V2 -> NP -> NP -> S = \v,s,o -> PresCl (SPredV2 s v o) ; + PresVasV2 : V -> NP -> NP -> S = \ v -> PresV2 (dirV2 v) ; + + PresCl : Cl -> S = UseCl (PosTP TPresent ASimul) ; + + ModPosA : ADeg -> CN -> CN = \a -> ModAP (PositADeg a) ; + ModA : A -> CN -> CN = \a -> ModAP (UseA a) ; + +} \ No newline at end of file