1
0
forked from GitHub/gf-rgl
Files
gf-rgl/src/turkish/AdjectiveTur.gf
Ayberk Tosun 76d6749797 Complete AdjectiveTur (#12)
* remove unnecessary flags from GrammarTur.gf

* Implement the linearization for UseA2

* Minor formatting fixes

* Manually specify the preposition "ile" for married_A2

* Implement the linearization for ComplA2

* Implement the linearization for ReflA2 ("kendi ile evli")

* Fix ReflA2 adjective case to Nom

* Add a TODO comment

* Add a linearization for AdAP

* Implement the linearization for UseA2

* Minor formatting fixes

* Manually specify the preposition "ile" for married_A2

* Implement the linearization for ComplA2

* Implement the linearization for ReflA2 ("kendi ile evli")

* Fix ReflA2 adjective case to Nom

* Add a TODO comment

* Add a linearization for AdAP

* Fix AdAP

* Add linearization for at_most_AdN

* Add linearization for at_least_AdN

* added dummies for the missing modules in Turkish

* Add the linearization for as_CAdv

* Add rudimentary linearization for UsePN

* Add the linearization for CAdvAP

* Add preliminary linearization for EmbedVP

* Add linearization stub for SentAP

* Fix code-formatting and indentation in HarmonyTur

* Patterns for front and back vowels

* Add an oper for attaching the -mA suffix

* Formatting fixes in ParadigmsTur

* Attempt to implement attachMe

* Almost-working linearization for SentAP

* Update TODO for SentAP

* Move the addition of suffix si to the linearization of EmbedVP

* Import PhraseTur in GrammarTur

* Fix the duplication of PhraseTur in GrammarTur

* Start working on PhraseTur

* Fix formatting of makeH4Table

* Formatting

* Begin implementing the gerund inflection `makeVerb`

* Attach Number and Case data to the Gerund constructor of param VForm

* Get rid of hacky appending of "si" in EmbedVP
2017-09-30 13:29:03 +02:00

57 lines
1.2 KiB
Plaintext

concrete AdjectiveTur of Adjective =
CatTur ** open ResTur, ParadigmsTur, Prelude in {
lin
PositA a = {s = a.s} ;
ComparA a np = {
s = \\n,c => np.s ! Ablat ++ a.s ! n ! c ;
} ;
UseComparA a = {
s = \\n,c => "daha" ++ a.s ! n ! c
} ;
AdjOrd v = v ;
AdvAP ap adv = {
s = \\n, c => adv.s ++ ap.s ! n ! c
} ;
AdAP ada ap = {
s = \\n, c => ada.s ++ ap.s ! n ! c
} ;
UseA2 a = {s = a.s} ;
ComplA2 a np = {
s = \\n, c => np.s ! a.c.c ++ a.c.s ++ a.s ! n ! c
} ;
-- TODO: Whether this is correct or not requires further examination.
ReflA2 a = {
s =
let
kendi : N = mkN "kendi"
in
\\n, c => kendi.s ! n ! c ++ a.c.s ++ a.s ! n ! Nom
} ;
-- Some examples of using CAdvAP:
-- Lang> gt -number=2 -depth=1 (CAdvAP ? ? ?) | l -lang=LangTur
-- > Paris kadar kötü
-- > o kadar kötü
CAdvAP cadv ap np = {
s = \\n, c => np.s ! Nom ++ cadv.s ++ ap.s ! n ! c
} ;
-- TODO: Instead of `++ BIND ++ "si"`, sc.s should be treated as a noun
-- and it should be inflected to `gen Sg {n = Sg; p = P3}`.
SentAP ap sc = {
s =
\\n, c => sc.s ++ (ap.s ! n ! c)
} ;
}