mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-20 16:42:51 -06:00
bronzeage grammar restored except for three ones with issues ; arabic transliteration added
This commit is contained in:
38
examples/bronzeage/Bronzeage.gf
Normal file
38
examples/bronzeage/Bronzeage.gf
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
abstract Bronzeage = Cat, Swadesh ** {
|
||||||
|
|
||||||
|
flags startcat = Phr ;
|
||||||
|
|
||||||
|
cat
|
||||||
|
Sent ; MassCN ;
|
||||||
|
|
||||||
|
fun
|
||||||
|
PhrPos : Sent -> Phr ;
|
||||||
|
PhrNeg : Sent -> Phr ;
|
||||||
|
PhrQuest : Sent -> Phr ;
|
||||||
|
PhrImp : Imp -> Phr ;
|
||||||
|
PhrImpNeg : Imp -> Phr ;
|
||||||
|
|
||||||
|
SentV : V -> NP -> Sent ;
|
||||||
|
SentV2 : V2 -> NP -> NP -> Sent ;
|
||||||
|
SentV2Mass : V2 -> NP -> MassCN -> Sent ;
|
||||||
|
SentV3 : V3 -> NP -> NP -> NP -> Sent ;
|
||||||
|
SentA : A -> NP -> Sent ;
|
||||||
|
SentNP : NP -> NP -> Sent ;
|
||||||
|
|
||||||
|
SentAdvV : V -> NP -> Adv -> Sent ;
|
||||||
|
SentAdvV2 : V2 -> NP -> NP -> Adv -> Sent ;
|
||||||
|
|
||||||
|
ImpV : V -> Imp ;
|
||||||
|
ImpV2 : V2 -> NP -> Imp ;
|
||||||
|
|
||||||
|
UsePron : Pron -> NP ;
|
||||||
|
DetCN : Det -> CN -> NP ;
|
||||||
|
NumCN : Card -> CN -> NP ;
|
||||||
|
|
||||||
|
UseN : N -> CN ;
|
||||||
|
ModCN : A -> CN -> CN ;
|
||||||
|
|
||||||
|
UseMassN : MassN -> MassCN ;
|
||||||
|
ModMass : A -> MassCN -> MassCN ;
|
||||||
|
|
||||||
|
}
|
||||||
7
examples/bronzeage/BronzeageDan.gf
Normal file
7
examples/bronzeage/BronzeageDan.gf
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageDan of Bronzeage = CatDan, SwadeshDan ** BronzeageI with
|
||||||
|
(Lang = LangDan) ** {
|
||||||
|
flags language = da_DK;
|
||||||
|
}
|
||||||
|
|
||||||
7
examples/bronzeage/BronzeageEng.gf
Normal file
7
examples/bronzeage/BronzeageEng.gf
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageEng of Bronzeage = CatEng, SwadeshEng ** BronzeageI with
|
||||||
|
(Lang = LangEng) ** {
|
||||||
|
flags language = en_US;
|
||||||
|
}
|
||||||
|
|
||||||
8
examples/bronzeage/BronzeageFin.gf
Normal file
8
examples/bronzeage/BronzeageFin.gf
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageFin of Bronzeage = CatFin, SwadeshFin ** BronzeageI with
|
||||||
|
(Lang = LangFin) ** {
|
||||||
|
flags language = fi_FI;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
8
examples/bronzeage/BronzeageGer.gf
Normal file
8
examples/bronzeage/BronzeageGer.gf
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageGer of Bronzeage = CatGer, SwadeshGer ** BronzeageI with
|
||||||
|
(Lang = LangGer) ** {
|
||||||
|
flags language = de_DE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
59
examples/bronzeage/BronzeageI.gf
Normal file
59
examples/bronzeage/BronzeageI.gf
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
incomplete concrete BronzeageI of Bronzeage = open Lang in {
|
||||||
|
|
||||||
|
flags
|
||||||
|
optimize = all_subs ; --optimize = share_subs ;
|
||||||
|
unlexer = text ; lexer = text ;
|
||||||
|
|
||||||
|
lincat
|
||||||
|
Sent = {s : SForm => Str} ; MassCN = CN ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
PhrPos sent = {s = sent.s ! SPos ++ "."} ;
|
||||||
|
PhrNeg sent = {s = sent.s ! SNeg ++ "."} ;
|
||||||
|
PhrQuest sent = {s = sent.s ! SQuest ++ "?"} ;
|
||||||
|
PhrImp imp = {s = (PhrUtt NoPConj (UttImpSg PPos imp) NoVoc).s ++ "!"} ;
|
||||||
|
PhrImpNeg imp = {s = (PhrUtt NoPConj (UttImpSg PNeg imp) NoVoc).s ++ "!"} ;
|
||||||
|
|
||||||
|
SentV v np = mkSent np (UseV v) ;
|
||||||
|
|
||||||
|
SentV2 v x y = mkSent x (ComplSlash (SlashV2a v) y) ;
|
||||||
|
SentV2Mass v x y = mkSent x (ComplSlash (SlashV2a v) (massNP y)) ;
|
||||||
|
SentV3 v x y z = mkSent x (ComplSlash (Slash2V3 v y) z) ;
|
||||||
|
SentA a x = mkSent x (UseComp (CompAP (PositA a))) ;
|
||||||
|
SentNP a x = mkSent x (UseComp (CompNP a)) ;
|
||||||
|
|
||||||
|
SentAdvV v np adv = mkSent np (AdvVP (UseV v) adv) ;
|
||||||
|
SentAdvV2 v x y adv = mkSent x (AdvVP (ComplSlash (SlashV2a v) y) adv) ;
|
||||||
|
|
||||||
|
ImpV v = ImpVP (UseV v) ;
|
||||||
|
ImpV2 v x = ImpVP (ComplSlash (SlashV2a v) x) ;
|
||||||
|
|
||||||
|
UsePron p = Lang.UsePron p ;
|
||||||
|
DetCN d n = Lang.DetCN d n ;
|
||||||
|
NumCN k cn = Lang.DetCN (DetArtCard (IndefArt) k) cn ;
|
||||||
|
|
||||||
|
UseN n = Lang.UseN n ;
|
||||||
|
ModCN a cn = AdjCN (PositA a) cn ;
|
||||||
|
|
||||||
|
UseMassN mn = Lang.UseN mn ;
|
||||||
|
ModMass a cn = AdjCN (PositA a) cn ;
|
||||||
|
|
||||||
|
param
|
||||||
|
SForm = SPos | SNeg | SQuest ;
|
||||||
|
|
||||||
|
oper
|
||||||
|
mkSent : NP -> VP -> Sent ;
|
||||||
|
mkSent np vp =
|
||||||
|
let cl = PredVP np vp
|
||||||
|
in {
|
||||||
|
s = table {
|
||||||
|
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 = MassNP ;
|
||||||
|
|
||||||
|
}
|
||||||
6
examples/bronzeage/BronzeageNor.gf
Normal file
6
examples/bronzeage/BronzeageNor.gf
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageNor of Bronzeage = CatNor, SwadeshNor ** BronzeageI with
|
||||||
|
(Lang = LangNor) ** {
|
||||||
|
flags language = nb_NO;
|
||||||
|
}
|
||||||
7
examples/bronzeage/BronzeageRus.gf
Normal file
7
examples/bronzeage/BronzeageRus.gf
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageRus of Bronzeage = CatRus, SwadeshRus ** BronzeageI with
|
||||||
|
(Lang = LangRus) ** {
|
||||||
|
flags language = ru_RU;
|
||||||
|
}
|
||||||
|
|
||||||
7
examples/bronzeage/BronzeageSpa.gf
Normal file
7
examples/bronzeage/BronzeageSpa.gf
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageSpa of Bronzeage = CatSpa, SwadeshSpa ** BronzeageI with
|
||||||
|
(Lang = LangSpa) ** {
|
||||||
|
flags language = es_ES;
|
||||||
|
}
|
||||||
|
|
||||||
8
examples/bronzeage/BronzeageSwe.gf
Normal file
8
examples/bronzeage/BronzeageSwe.gf
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete BronzeageSwe of Bronzeage = CatSwe, SwadeshSwe ** BronzeageI with
|
||||||
|
(Lang = LangSwe) ** {
|
||||||
|
flags language = sv_SE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
245
examples/bronzeage/Swadesh.gf
Normal file
245
examples/bronzeage/Swadesh.gf
Normal file
@@ -0,0 +1,245 @@
|
|||||||
|
abstract Swadesh = Cat ** {
|
||||||
|
|
||||||
|
cat
|
||||||
|
MassN ;
|
||||||
|
|
||||||
|
fun
|
||||||
|
|
||||||
|
-- Pronouns
|
||||||
|
|
||||||
|
i_NP : Pron ;
|
||||||
|
youSg_NP : Pron ;
|
||||||
|
he_NP : Pron ;
|
||||||
|
we_NP : Pron ;
|
||||||
|
youPl_NP : Pron ;
|
||||||
|
they_NP : Pron ;
|
||||||
|
whoPl_IP : IP ; -- only one who in Swadesh 207
|
||||||
|
whoSg_IP : IP ;
|
||||||
|
whatPl_IP : IP ; -- only one what in Swadesh 207
|
||||||
|
whatSg_IP : IP ;
|
||||||
|
|
||||||
|
-- Determiners
|
||||||
|
|
||||||
|
that_Det : Det ;
|
||||||
|
this_Det : Det ;
|
||||||
|
---- all_Predet : Predet ;
|
||||||
|
many_Det : Det ;
|
||||||
|
some_Det : Det ;
|
||||||
|
|
||||||
|
left_Ord : Ord ;
|
||||||
|
right_Ord : Ord ;
|
||||||
|
|
||||||
|
-- Adverbs
|
||||||
|
|
||||||
|
here_Adv : Adv ;
|
||||||
|
there_Adv : Adv ;
|
||||||
|
where_IAdv : IAdv ;
|
||||||
|
when_IAdv : IAdv ;
|
||||||
|
how_IAdv : IAdv ;
|
||||||
|
far_Adv : Adv ;
|
||||||
|
|
||||||
|
-- Conjunctions
|
||||||
|
|
||||||
|
and_Conj : Conj ;
|
||||||
|
|
||||||
|
-- Prepositions
|
||||||
|
|
||||||
|
-- at_Prep : Prep ;
|
||||||
|
in_Prep : Prep ;
|
||||||
|
with_Prep : Prep ;
|
||||||
|
|
||||||
|
-- not -- ?
|
||||||
|
-- if -- ?
|
||||||
|
-- because -- ?
|
||||||
|
|
||||||
|
-- Numerals
|
||||||
|
|
||||||
|
one_Det : Card ;
|
||||||
|
two_Num : Card ;
|
||||||
|
three_Num : Card ;
|
||||||
|
four_Num : Card ;
|
||||||
|
five_Num : Card ;
|
||||||
|
|
||||||
|
-- Adjectives
|
||||||
|
|
||||||
|
bad_A : A ;
|
||||||
|
big_A : A ;
|
||||||
|
black_A : A ;
|
||||||
|
cold_A : A ;
|
||||||
|
correct_A : A ;
|
||||||
|
dirty_A : A ;
|
||||||
|
dry_A : A ;
|
||||||
|
dull_A : A ;
|
||||||
|
full_A : A ;
|
||||||
|
good_A : A ;
|
||||||
|
green_A : A ;
|
||||||
|
heavy_A : A ;
|
||||||
|
long_A : A ;
|
||||||
|
narrow_A : A ;
|
||||||
|
near_A : A ;
|
||||||
|
new_A : A ;
|
||||||
|
old_A : A ;
|
||||||
|
---- other_A : A ;
|
||||||
|
red_A : A ;
|
||||||
|
rotten_A : A ;
|
||||||
|
round_A : A ;
|
||||||
|
sharp_A : A ;
|
||||||
|
short_A : A ;
|
||||||
|
small_A : A ;
|
||||||
|
smooth_A : A ;
|
||||||
|
straight_A : A ;
|
||||||
|
thick_A : A ;
|
||||||
|
thin_A : A ;
|
||||||
|
warm_A : A ;
|
||||||
|
wet_A : A ;
|
||||||
|
white_A : A ;
|
||||||
|
wide_A : A ;
|
||||||
|
yellow_A : A ;
|
||||||
|
|
||||||
|
-- Nouns
|
||||||
|
|
||||||
|
animal_N : N ;
|
||||||
|
ashes_N : MassN ;
|
||||||
|
back_N : N ;
|
||||||
|
bark_N : MassN ;
|
||||||
|
belly_N : N ;
|
||||||
|
bird_N : N ;
|
||||||
|
blood_N : MassN ;
|
||||||
|
bone_N : N ;
|
||||||
|
breast_N : N ;
|
||||||
|
child_N : N ;
|
||||||
|
cloud_N : N ;
|
||||||
|
day_N : N ;
|
||||||
|
dog_N : N ;
|
||||||
|
dust_N : MassN ;
|
||||||
|
ear_N : N ;
|
||||||
|
earth_N : MassN ;
|
||||||
|
egg_N : N ;
|
||||||
|
eye_N : N ;
|
||||||
|
fat_N : MassN ;
|
||||||
|
---- father_N : N ;
|
||||||
|
feather_N : N ;
|
||||||
|
fingernail_N : N ;
|
||||||
|
fire_N : N ;
|
||||||
|
fish_N : N ;
|
||||||
|
flower_N : N ;
|
||||||
|
fog_N : MassN ;
|
||||||
|
foot_N : N ;
|
||||||
|
forest_N : N ;
|
||||||
|
fruit_N : N ;
|
||||||
|
grass_N : N ;
|
||||||
|
guts_N : N ;
|
||||||
|
hair_N : N ;
|
||||||
|
hand_N : N ;
|
||||||
|
head_N : N ;
|
||||||
|
heart_N : N ;
|
||||||
|
horn_N : N ;
|
||||||
|
husband_N : N ;
|
||||||
|
ice_N : MassN ;
|
||||||
|
knee_N : N ;
|
||||||
|
lake_N : N ;
|
||||||
|
leaf_N : N ;
|
||||||
|
leg_N : N ;
|
||||||
|
liver_N : N ;
|
||||||
|
louse_N : N ;
|
||||||
|
man_N : N ;
|
||||||
|
meat_N : MassN ;
|
||||||
|
moon_N : N ;
|
||||||
|
---- mother_N : N ;
|
||||||
|
mountain_N : N ;
|
||||||
|
mouth_N : N ;
|
||||||
|
name_N : N ;
|
||||||
|
neck_N : N ;
|
||||||
|
night_N : N ;
|
||||||
|
nose_N : N ;
|
||||||
|
person_N : N ;
|
||||||
|
rain_N : MassN ;
|
||||||
|
river_N : N ;
|
||||||
|
road_N : N ;
|
||||||
|
root_N : N ;
|
||||||
|
rope_N : N ;
|
||||||
|
salt_N : MassN ;
|
||||||
|
sand_N : MassN ;
|
||||||
|
sea_N : N ;
|
||||||
|
seed_N : N ;
|
||||||
|
skin_N : N ;
|
||||||
|
sky_N : N ;
|
||||||
|
smoke_N : MassN ;
|
||||||
|
snake_N : N ;
|
||||||
|
snow_N : MassN ;
|
||||||
|
star_N : N ;
|
||||||
|
stick_N : N ;
|
||||||
|
stone_N : N ;
|
||||||
|
sun_N : N ;
|
||||||
|
tail_N : N ;
|
||||||
|
tongue_N : N ;
|
||||||
|
tooth_N : N ;
|
||||||
|
tree_N : N ;
|
||||||
|
water_N : MassN ;
|
||||||
|
wife_N : N ;
|
||||||
|
wind_N : N ;
|
||||||
|
wing_N : N ;
|
||||||
|
woman_N : N ;
|
||||||
|
worm_N : N ;
|
||||||
|
year_N : N ;
|
||||||
|
|
||||||
|
-- Verbs
|
||||||
|
|
||||||
|
bite_V2 : V2 ;
|
||||||
|
blow_V : V ;
|
||||||
|
breathe_V : V ;
|
||||||
|
burn_V : V ;
|
||||||
|
come_V : V ;
|
||||||
|
count_V2 : V2 ;
|
||||||
|
cut_V2 : V2 ;
|
||||||
|
die_V : V ;
|
||||||
|
dig_V : V ;
|
||||||
|
drink_V2 : V2 ;
|
||||||
|
eat_V2 : V2 ;
|
||||||
|
fall_V : V ;
|
||||||
|
fear_V2 : V2 ;
|
||||||
|
fight_V2 : V2 ;
|
||||||
|
float_V : V ;
|
||||||
|
flow_V : V ;
|
||||||
|
fly_V : V ;
|
||||||
|
freeze_V : V ;
|
||||||
|
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_V2 : V2 ;
|
||||||
|
push_V2 : V2 ;
|
||||||
|
rub_V2 : V2 ;
|
||||||
|
say_V : V ;
|
||||||
|
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_V2 : V2 ;
|
||||||
|
squeeze_V2 : V2 ;
|
||||||
|
stab_V2 : V2 ;
|
||||||
|
stand_V : V ;
|
||||||
|
suck_V2 : V2 ;
|
||||||
|
swell_V : V ;
|
||||||
|
swim_V : V ;
|
||||||
|
think_V : V ;
|
||||||
|
throw_V2 : V2 ;
|
||||||
|
tie_V2 : V2 ;
|
||||||
|
turn_V : V ;
|
||||||
|
vomit_V : V ;
|
||||||
|
walk_V : V ;
|
||||||
|
wash_V2 : V2 ;
|
||||||
|
wipe_V2 : V2 ;
|
||||||
|
|
||||||
|
}
|
||||||
5
examples/bronzeage/SwadeshAra.gf
Normal file
5
examples/bronzeage/SwadeshAra.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshAra of Swadesh = CatAra ** SwadeshI with
|
||||||
|
(Lang = LangAra) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshDan.gf
Normal file
5
examples/bronzeage/SwadeshDan.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshDan of Swadesh = CatDan ** SwadeshI with
|
||||||
|
(Lang = LangDan) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshEng.gf
Normal file
5
examples/bronzeage/SwadeshEng.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshEng of Swadesh = CatEng ** SwadeshI with
|
||||||
|
(Lang = LangEng) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshFin.gf
Normal file
5
examples/bronzeage/SwadeshFin.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshFin of Swadesh = CatFin ** SwadeshI with
|
||||||
|
(Lang = LangFin) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshFre.gf
Normal file
5
examples/bronzeage/SwadeshFre.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshFre of Swadesh = CatFre ** SwadeshI with
|
||||||
|
(Lang = LangFre) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshGer.gf
Normal file
5
examples/bronzeage/SwadeshGer.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshGer of Swadesh = CatGer ** SwadeshI with
|
||||||
|
(Lang = LangGer) ;
|
||||||
|
|
||||||
226
examples/bronzeage/SwadeshI.gf
Normal file
226
examples/bronzeage/SwadeshI.gf
Normal file
@@ -0,0 +1,226 @@
|
|||||||
|
incomplete concrete SwadeshI of Swadesh = open Lang in {
|
||||||
|
|
||||||
|
lincat
|
||||||
|
MassN = Lang.N ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
|
||||||
|
-- Pronouns
|
||||||
|
|
||||||
|
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 = DetQuant (this_Quant) NumSg ;
|
||||||
|
that_Det = DetQuant (that_Quant) NumSg ;
|
||||||
|
many_Det = Lang.many_Det ;
|
||||||
|
some_Det = someSg_Det ;
|
||||||
|
---- few_Det = few_Det ;
|
||||||
|
|
||||||
|
left_Ord = Lang.left_Ord ;
|
||||||
|
right_Ord = Lang.right_Ord ;
|
||||||
|
-- Adverbs
|
||||||
|
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 = Lang.and_Conj ;
|
||||||
|
-- Prepositions
|
||||||
|
in_Prep = Lang.in_Prep ;
|
||||||
|
with_Prep = Lang.with_Prep ;
|
||||||
|
-- Numerals
|
||||||
|
one_Det = Lang.NumNumeral (num (pot2as3 (pot1as2 (pot0as1 pot01)))) ;
|
||||||
|
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 = 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 = 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 = 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 ;
|
||||||
|
|
||||||
|
}
|
||||||
5
examples/bronzeage/SwadeshIta.gf
Normal file
5
examples/bronzeage/SwadeshIta.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshIta of Swadesh = CatIta ** SwadeshI with
|
||||||
|
(Lang = LangIta) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshNor.gf
Normal file
5
examples/bronzeage/SwadeshNor.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshNor of Swadesh = CatNor ** SwadeshI with
|
||||||
|
(Lang = LangNor) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshRus.gf
Normal file
5
examples/bronzeage/SwadeshRus.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshRus of Swadesh = CatRus ** SwadeshI with
|
||||||
|
(Lang = LangRus) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshSpa.gf
Normal file
5
examples/bronzeage/SwadeshSpa.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshSpa of Swadesh = CatSpa ** SwadeshI with
|
||||||
|
(Lang = LangSpa) ;
|
||||||
|
|
||||||
5
examples/bronzeage/SwadeshSwe.gf
Normal file
5
examples/bronzeage/SwadeshSwe.gf
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
--# -path=.:present:prelude
|
||||||
|
|
||||||
|
concrete SwadeshSwe of Swadesh = CatSwe ** SwadeshI with
|
||||||
|
(Lang = LangSwe) ;
|
||||||
|
|
||||||
@@ -445,6 +445,7 @@ allCommands enc pgf = Map.fromList [
|
|||||||
let out = maybe "no such transliteration" characterTable $ transliteration t
|
let out = maybe "no such transliteration" characterTable $ transliteration t
|
||||||
return $ fromString out,
|
return $ fromString out,
|
||||||
options = [
|
options = [
|
||||||
|
("arabic", "Arabic"),
|
||||||
("devanagari","Devanagari"),
|
("devanagari","Devanagari"),
|
||||||
("thai", "Thai")
|
("thai", "Thai")
|
||||||
]
|
]
|
||||||
@@ -584,6 +585,7 @@ stringOpOptions = [
|
|||||||
("bind","bind tokens separated by Prelude.BIND, i.e. &+"),
|
("bind","bind tokens separated by Prelude.BIND, i.e. &+"),
|
||||||
("chars","lexer that makes every non-space character a token"),
|
("chars","lexer that makes every non-space character a token"),
|
||||||
("from_cp1251","decode from cp1251 (Cyrillic used in Bulgarian resource)"),
|
("from_cp1251","decode from cp1251 (Cyrillic used in Bulgarian resource)"),
|
||||||
|
("from_arabic","from unicode to GF Arabic transliteration"),
|
||||||
("from_devanagari","from unicode to GF Devanagari transliteration"),
|
("from_devanagari","from unicode to GF Devanagari transliteration"),
|
||||||
("from_thai","from unicode to GF Thai transliteration"),
|
("from_thai","from unicode to GF Thai transliteration"),
|
||||||
("from_utf8","decode from utf8"),
|
("from_utf8","decode from utf8"),
|
||||||
@@ -591,6 +593,7 @@ stringOpOptions = [
|
|||||||
("lexcode","code-like lexer"),
|
("lexcode","code-like lexer"),
|
||||||
("lexmixed","mixture of text and code (code between $...$)"),
|
("lexmixed","mixture of text and code (code between $...$)"),
|
||||||
("to_cp1251","encode to cp1251 (Cyrillic used in Bulgarian resource)"),
|
("to_cp1251","encode to cp1251 (Cyrillic used in Bulgarian resource)"),
|
||||||
|
("to_arabic","from GF Arabic transliteration to unicode"),
|
||||||
("to_devanagari","from GF Devanagari transliteration to unicode"),
|
("to_devanagari","from GF Devanagari transliteration to unicode"),
|
||||||
("to_html","wrap in a html file with linebreaks"),
|
("to_html","wrap in a html file with linebreaks"),
|
||||||
("to_thai","from GF Thai transliteration to unicode"),
|
("to_thai","from GF Thai transliteration to unicode"),
|
||||||
|
|||||||
@@ -25,9 +25,10 @@ transliterate s = case s of
|
|||||||
|
|
||||||
transliteration :: String -> Maybe Transliteration
|
transliteration :: String -> Maybe Transliteration
|
||||||
transliteration s = case s of
|
transliteration s = case s of
|
||||||
|
"arabic" -> Just transArabic
|
||||||
"devanagari" -> Just transDevanagari
|
"devanagari" -> Just transDevanagari
|
||||||
"thai" -> Just transThai
|
"thai" -> Just transThai
|
||||||
"urdu" -> Just transUrdu
|
---- "urdu" -> Just transUrdu
|
||||||
_ -> Nothing
|
_ -> Nothing
|
||||||
|
|
||||||
characterTable :: Transliteration -> String
|
characterTable :: Transliteration -> String
|
||||||
@@ -101,5 +102,15 @@ allTransUrduHindi = words $
|
|||||||
transUrdu :: Transliteration
|
transUrdu :: Transliteration
|
||||||
transUrdu =
|
transUrdu =
|
||||||
(mkTransliteration allTransUrduHindi allCodes){invisible_chars = ["a"]} where
|
(mkTransliteration allTransUrduHindi allCodes){invisible_chars = ["a"]} where
|
||||||
allCodes = [0x0901 .. 0x094c]
|
allCodes = [0x0901 .. 0x094c] ---- TODO: this is devanagari
|
||||||
|
|
||||||
|
transArabic :: Transliteration
|
||||||
|
transArabic = mkTransliteration allTrans allCodes where
|
||||||
|
allTrans = words $
|
||||||
|
" V A: A? w? A- y? A b t. t v g H K d " ++ -- 0621 - 062f
|
||||||
|
"W r z s C S D T Z c G " ++ -- 0630 - 063a
|
||||||
|
" f q k l m n h w y. y a. u. i. a u " ++ -- 0641 - 064f
|
||||||
|
"i v2 o a: V+ V- i: a+" -- 0650 - 0657
|
||||||
|
allCodes = [0x0621..0x062f] ++ [0x0630..0x063a] ++
|
||||||
|
[0x0641..0x064f] ++ [0x0650..0x0657]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user