forked from GitHub/gf-core
Added stonage grammar (abstract and english), which uses the Swadesh lexicon.
This commit is contained in:
246
examples/stoneage/Stoneage.gf
Normal file
246
examples/stoneage/Stoneage.gf
Normal file
@@ -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 ;
|
||||
|
||||
}
|
||||
209
examples/stoneage/StoneageEng.gf
Normal file
209
examples/stoneage/StoneageEng.gf
Normal file
@@ -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) ;
|
||||
|
||||
}
|
||||
13
examples/stoneage/StoneageResEng.gf
Normal file
13
examples/stoneage/StoneageResEng.gf
Normal file
@@ -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) ;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user