1
0
forked from GitHub/gf-rgl

Complete LexiconTur (#20)

* remove unnecessary flags from GrammarTur.gf

* Add linearization for `alas_Interj`

* Add linearization for `already_Adv`

* Implement linearization for `easy_A2V`

* Implement linearization for `far_Adv`

* Implement a rudimentary linearization for `easy_A2V`

* Implement linearization for `now_Adv`

* Add implementation stubs for the linearizations of `left_Ord` and `right_Ord`

* Add linearization for `today_Adv`

* Define type aliases AS = AV = A

* Define `mkAS` and `mkAV` trivially

* Add linearization for `probable_AS`

* Rudimentary linearization for `fun_AV`

* Add linearization for `know_VQ`

* Bit of alignment

* Define the `mkAdv` function in `ParadigmsTur`

* Improve the comment regarding `easy_A2V`

* Make use of `mkAdv`
This commit is contained in:
Ayberk Tosun
2017-12-11 02:05:08 -06:00
committed by Krasimir Angelov
parent 13330bd983
commit f0fbd41c91
2 changed files with 45 additions and 2 deletions

View File

@@ -347,6 +347,35 @@ concrete LexiconTur of Lexicon = CatTur **
watch_V2 = mkV2 (mkV "izlemek") ;
win_V2 = mkV2 (mkV "kazanmak") ;
wipe_V2 = mkV2 (mkV "silmek") ;
wonder_VQ = mkV "merak" et_Aux ;
write_V2 = mkV2 (mkV "yazmak") ;
wonder_VQ = mkV "merak" et_Aux ;
know_VQ = mkV "bilmek" SgSylConIrreg ;
alas_Interj = { s = "ne yazık ki" } ;
already_Adv = mkAdv "zaten" ;
far_Adv = mkAdv "uzak" ;
now_Adv = mkAdv "şimdi" ;
today_Adv = mkAdv "bugün" ;
-- TODO: should `linearize easy_A2V` be (A) "kolay" (Eng "easy") or (B)
-- ("için kolay") (Eng "easy for")? I got the latter from the English
-- linearization but the following seems to be the correct way using the
-- paradigms. I might need to do something so that the resulting
-- linearization is (B).
easy_A2V = mkA2 (mkA "kolay") icinP ;
-- TODO: It is not obvious to me why these are inflected so putting
-- this here as an implementation stub.
left_Ord = { s = \\_,_ => "sol" } ;
right_Ord = { s = \\_,_ => "sağ" } ;
probable_AS = mkAS (mkA "olası") ;
fun_AV = mkAV (mkA "neşe") ;
oper
icinP = mkPrep "için" Gen ;
}

View File

@@ -13,8 +13,9 @@ resource ParadigmsTur = open
coding=utf8 ; optimize=noexpand ;
oper
-- Paradigms for verb
AS, AV : Type = A ;
-- Paradigms for verb
mkV : overload {
-- make regular verbs, one form is enough
mkV : (esmek : Str) -> V ;
@@ -155,6 +156,9 @@ resource ParadigmsTur = open
mkA : Str -> Str -> HarVowP -> A ;
} ;
mkAS : A -> AS ;
mkAV : A -> AV ;
mkA2 : overload {
-- (biri) ile evli
mkA2 : A -> Prep -> A2 ;
@@ -184,6 +188,10 @@ resource ParadigmsTur = open
makeDigit : Str -> Str -> Number -> {s : CardOrd => Number => Case => Str ; n : Number} ;
-- Adverbs
mkAdv : Str -> Adv ;
--Implementation of verb paradigms
mkV = overload {
@@ -425,6 +433,9 @@ resource ParadigmsTur = open
mkN3 base = (mkN base) ** lin N3 {c1,c2 = lin Prep {s=[]; c=Gen}} ;
-- Implementation for adverb paradigms.
mkAdv s = lin Adv { s = s } ;
-- Implementation of adjactive paradigms
mkA = overload {
-- güzel
@@ -441,6 +452,9 @@ resource ParadigmsTur = open
mkA : (base, base1 : Str) -> (ih_har : HarVowP) -> A = \base,base1,ih_har -> (irregN_h base base ih_har) ** lin A {adv = addSuffix base (mkHar ih_har (getHarConP base)) adjAdvSuffix};
} ;
mkAS v = v ;
mkAV v = v ;
mkA2 =
overload {
mkA2 : A -> Prep -> A2 = \base,c -> base ** lin A2 {c = c} ;