mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
French Swadesh, some bugs remain
This commit is contained in:
242
examples/stoneage/StoneageFre.gf
Normal file
242
examples/stoneage/StoneageFre.gf
Normal file
@@ -0,0 +1,242 @@
|
||||
--# -path=.:../../lib/resource/romance:../../lib/resource/abstract:../../lib/resource/french:../../lib/prelude
|
||||
|
||||
concrete StoneageFre of Stoneage
|
||||
= open SyntaxFre, RulesFre, StructuralFre, ParadigmsFre, SwadeshLexFre,
|
||||
StoneageResFre in {
|
||||
|
||||
flags
|
||||
startcat=S; optimize=share;
|
||||
|
||||
lincat
|
||||
S = Phr ;
|
||||
NP = NP ;
|
||||
N = N;
|
||||
CN = CN ;
|
||||
|
||||
lin
|
||||
|
||||
-- Sentence conjunction
|
||||
|
||||
-- AndS s1 s2 = { s = s1.s ++ and_Conj.s ++ s2.s } ** { lock_Phr = <> } ;
|
||||
|
||||
-- NP conjunction
|
||||
|
||||
-- AndNP n1 n2 = ConjNP and_Conj (TwoNP n1 n2);
|
||||
|
||||
|
||||
Drink = PresV2 (dirV2 drink_V) ;
|
||||
Eat = PresV2 (dirV2 eat_V) ;
|
||||
Bite = PresV2 (dirV2 bite_V) ;
|
||||
Suck = PresV2 (dirV2 suck_V) ;
|
||||
See = PresV2 (dirV2 see_V) ;
|
||||
Hear = PresV2 (dirV2 hear_V) ;
|
||||
Know = PresV2 (dirV2 know_V) ;
|
||||
Think = PresV2 (dirV2 think_V) ;
|
||||
Smell = PresV2 (dirV2 smell_V) ;
|
||||
Fear = PresV2 (dirV2 fear_V) ;
|
||||
Kill = PresV2 (dirV2 kill_V) ;
|
||||
Fight = PresV2 (dirV2 fight_V) ;
|
||||
Hunt = PresV2 (dirV2 hunt_V) ;
|
||||
Hit = PresV2 (dirV2 hit_V) ;
|
||||
Cut = PresV2 (dirV2 cut_V) ;
|
||||
Split = PresV2 (dirV2 split_V) ;
|
||||
Stab = PresV2 (dirV2 stab_V) ;
|
||||
Scratch = PresV2 (dirV2 scratch_V) ;
|
||||
Hold = PresV2 (dirV2 hold_V) ;
|
||||
Squeeze = PresV2 (dirV2 squeeze_V) ;
|
||||
Rub = PresV2 (dirV2 rub_V) ;
|
||||
Wash = PresV2 (dirV2 wash_V) ;
|
||||
Wipe = PresV2 (dirV2 wipe_V) ;
|
||||
Pull = PresV2 (dirV2 pull_V) ;
|
||||
Push = PresV2 (dirV2 push_V) ;
|
||||
Throw = PresV2 (dirV2 throw_V) ;
|
||||
Tie = PresV2 (dirV2 tie_V) ;
|
||||
Count = PresV2 (dirV2 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 ;
|
||||
|
||||
Give = PresV3 (dirV3 give_V dative) ;
|
||||
|
||||
-- Say = ;
|
||||
|
||||
The_One = DefOneNP ;
|
||||
The_Many = DefNumNP NoNum ;
|
||||
A = IndefOneNP ;
|
||||
This = DetNP this_Det ;
|
||||
That = DetNP that_Det ;
|
||||
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 ;
|
||||
|
||||
One = IndefNumNP one_Num ;
|
||||
Two = IndefNumNP two_Num ;
|
||||
Three = IndefNumNP three_Num ;
|
||||
Four = IndefNumNP four_Num ;
|
||||
Five = IndefNumNP five_Num ;
|
||||
|
||||
-- Pronouns
|
||||
|
||||
I = i_NP ;
|
||||
You_One = thou_NP ;
|
||||
He = he_NP ;
|
||||
We = we_NP ;
|
||||
You_Many = you_NP ;
|
||||
They = they_NP ;
|
||||
|
||||
-- Nouns
|
||||
|
||||
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 = UseN mother_N ;
|
||||
Father = UseN father_N ;
|
||||
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 (mkN2 mother_N genitive) ;
|
||||
FatherOf = AppN2 (mkN2 father_N genitive) ;
|
||||
|
||||
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) ;
|
||||
|
||||
}
|
||||
21
examples/stoneage/StoneageResFre.gf
Normal file
21
examples/stoneage/StoneageResFre.gf
Normal file
@@ -0,0 +1,21 @@
|
||||
resource StoneageResFre = open RulesFre, SyntaxFre, ParadigmsFre in {
|
||||
|
||||
oper
|
||||
PresV : V -> NP -> Phr = \v,s -> PresCl (mkSats s v) ;
|
||||
PresV2 : V2 -> NP -> NP -> Phr = \v,s,o ->
|
||||
PresCl (mkSatsObject s v o) ;
|
||||
PresV3 : V3 -> NP -> NP -> NP -> Phr = \v,s,o,r ->
|
||||
PresCl (insertObject (mkSatsObject s v o) v.c3 v.s3 r) ;
|
||||
PresVasV2 : V -> NP -> NP -> Phr = \ v -> PresV2 (dirV2 v) ;
|
||||
|
||||
PresCl : Sats -> Phr = \c ->
|
||||
{s = (UseCl (PosTP TPresent ASimul)
|
||||
(sats2clause c ** {lock_Cl = <>})
|
||||
).s ! Ind ;
|
||||
lock_Phr = <>
|
||||
} ;
|
||||
|
||||
ModPosA : ADeg -> CN -> CN = \a -> ModAP (PositADeg a) ;
|
||||
ModA : A -> CN -> CN = \a -> ModAP (UseA a) ;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user