diff --git a/src/turkish/LexiconTur.gf b/src/turkish/LexiconTur.gf index fd6440a02..43c97ddef 100644 --- a/src/turkish/LexiconTur.gf +++ b/src/turkish/LexiconTur.gf @@ -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 ; } diff --git a/src/turkish/ParadigmsTur.gf b/src/turkish/ParadigmsTur.gf index 1b7dbd9eb..e99663f81 100644 --- a/src/turkish/ParadigmsTur.gf +++ b/src/turkish/ParadigmsTur.gf @@ -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} ;