diff options
Diffstat (limited to 'next-lib/src/turkish/ResTur.gf')
| -rw-r--r-- | next-lib/src/turkish/ResTur.gf | 152 |
1 files changed, 0 insertions, 152 deletions
diff --git a/next-lib/src/turkish/ResTur.gf b/next-lib/src/turkish/ResTur.gf deleted file mode 100644 index 3bdd63c80..000000000 --- a/next-lib/src/turkish/ResTur.gf +++ /dev/null @@ -1,152 +0,0 @@ ---# -path=.:../abstract:../common:../../prelude - -resource ResTur = ParamX ** open Prelude, Predef in { - ---2 For $Noun$ - - flags - coding=utf8 ; - - param - Case = Nom | Acc | Dat | Gen | Loc | Ablat | Abess Polarity ; - - Species = Indef | Def ; - - oper - Agr = {n : Number ; p : Person} ; - Noun = {s : Number => Case => Str; gen : Number => Agr => Str} ; - Pron = {s : Case => Str; a : Agr} ; - - agrP3 : Number -> Agr ; - agrP3 n = {n = n; p = P3} ; - --- For $Verb$. - - param - VForm = - VPres Number Person - | VPast Number Person - | VFuture Number Person - | VAorist Number Person - | VImperative - | VInfinitive - ; - - oper - Verb : Type = { - s : VForm => Str - } ; - ---2 For $Numeral$ - param - DForm = unit | ten ; - --- For $Numeral$. - oper - mkNum : Str -> Str -> {s : DForm => Str} = - \two, twenty -> - {s = table { - unit => two ; - ten => twenty - } - } ; - - mkPron : (ben,beni,bana,banin,bende,benden,benli,bensiz:Str) -> Number -> Person -> Pron = - \ben,beni,bana,benim,bende,benden,benli,bensiz,n,p -> { - s = table { - Nom => ben ; - Acc => beni ; - Dat => bana ; - Gen => benim ; - Loc => bende ; - Ablat => benden ; - Abess Pos => benli ; - Abess Neg => bensiz - } ; - a = {n=n; p=p} ; - } ; - - oper - harmony4 : Str -> Str -> Str -> Str - = \base0,suffixC,suffixV -> - let h : Str = - case base0 of { - _+c@("ı"|"a"|"i"|"e"|"u"|"o"|"ü"|"ö")+ - ("b"|"v"|"d"|"z"|"j"|"c"|"g"|"ğ"|"l"|"r"|"m"|"n"|"y"|"p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h")* => - case c of { - ("ı"|"a") => "ı" ; - ("i"|"e") => "i" ; - ("u"|"o") => "u" ; - ("ü"|"ö") => "ü" - } ; - _ => error "harmony4" - } ; - base : Str = - case dp 1 base0 + take 1 suffixC of { - ("k")+("ı"|"a"|"i"|"e"|"u"|"o"|"ü"|"ö") => tk 1 base0 + "ğ" ; - _ => base0 - } ; - suffix : Str = - case dp 1 base0 of { - ("ı"|"a"|"i"|"e"|"u"|"o"|"ü"|"ö") => case suffixV of { - s1@("b"|"v"|"d"|"z"|"j"|"c"|"g"|"ğ"|"l"|"r"|"m"|"n"|"y"|"p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h") - + ("ı"|"i"|"u"|"ü") - +s2 => s1+h+s2 ; - s => s - } ; - _ => case suffixC of { - s1@(("b"|"v"|"d"|"z"|"j"|"c"|"g"|"ğ"|"l"|"r"|"m"|"n"|"y"|"p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h")*) - + ("ı"|"i"|"u"|"ü") - +s2 => s1+h+s2 ; - s => s - } - } - in base + suffix ; - - harmony2 : Str -> Str -> Str -> Str - = \base0,suffixC,suffixV -> - let h : Str = - case base0 of { - _+c@("ı"|"a"|"i"|"e"|"u"|"o"|"ü"|"ö")+ - ("b"|"v"|"d"|"z"|"j"|"c"|"g"|"ğ"|"l"|"r"|"m"|"n"|"y"|"p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h")* => - case c of { - ("a"|"ı"|"u"|"o") => "a" ; - ("e"|"i"|"ü"|"ö") => "e" - } ; - _ => error "harmony2" - } ; - base : Str = - case dp 1 base0 + take 1 suffixC of { - ("k")+("ı"|"a"|"i"|"e"|"u"|"o"|"ü"|"ö") => tk 1 base0 + "ğ" ; - _ => base0 - } ; - suffix : Str = - case dp 1 base0 of { - ("ı"|"a"|"i"|"e"|"u"|"o"|"ü"|"ö") => case suffixV of { - s1@("b"|"v"|"d"|"z"|"j"|"c"|"g"|"ğ"|"l"|"r"|"m"|"n"|"y"|"p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h") - + ("a"|"e") - +s2 => s1+h+s2 ; - s => s - } ; - ("p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h") => case suffixC of { - s1@(("b"|"v"|"z"|"j"|"c"|"g"|"ğ"|"l"|"r"|"m"|"n"|"y"|"p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h")*) - + ("a"|"e") - +s2 => s1+h+s2 ; - ("da"|"de")+s => "t"+h+s ; - s => s - } ; - _ => case suffixC of { - s1@(("b"|"v"|"d"|"z"|"j"|"c"|"g"|"ğ"|"l"|"r"|"m"|"n"|"y"|"p"|"f"|"t"|"s"|"ş"|"ç"|"k"|"h")*) - + ("a"|"e") - +s2 => s1+h+s2 ; - s => s - } - } - in base + suffix ; - - add_number : Number -> Str -> Str = \n,base -> - case n of { - Sg => base ; - Pl => harmony2 base "ler" "ler" - } ; -} |
