forked from GitHub/gf-rgl
Added minimally functional Tamil
This commit is contained in:
135
src/tamil/ParamTam.gf
Normal file
135
src/tamil/ParamTam.gf
Normal file
@@ -0,0 +1,135 @@
|
||||
|
||||
resource ParamTam = ParamX ** open Prelude in {
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Phonology
|
||||
|
||||
--oper
|
||||
-- v : pattern Str = #("a"|"e"|"i"|"o"|"u") ;
|
||||
|
||||
-- diphthong : pattern Str = #("ai"|"au"|"oi") ;
|
||||
|
||||
-- c : pattern Str = #("m"|"n"|"ny"|"ng"
|
||||
-- |"p"|"b"|"t"|"d"|"k"|"g"
|
||||
-- |"s"|"z"|"c"|"j"|"sy"
|
||||
-- |"f"|"v"|"kh"|"gh"|"h"
|
||||
-- |"l"|"r"
|
||||
-- |"w"|"y") ;
|
||||
|
||||
-- -- not sure if needed anywhere, this is just my standard helper function.
|
||||
-- voiced : Str -> Str = \s -> case s of {
|
||||
-- "k" => "g" ; "t" => "d" ; "p" => "b" ;
|
||||
-- "s" => "z" ; "c" => "j" ; "kh" => "gh" ;
|
||||
-- _ => s } ;
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Morphophonology
|
||||
|
||||
-- prefix : Prefix -> Str -> Str = \p -> case p of {
|
||||
-- Meng => prefixMeng ;
|
||||
-- Ber => prefixBer
|
||||
-- } ;
|
||||
|
||||
-- prefixMeng : Str -> Str = \makan -> case makan of {
|
||||
|
||||
-- ? + ? + ? => "menge" + makan ;
|
||||
|
||||
-- (#v|"g"|"h") + _
|
||||
-- => "meng" + makan ; -- prefix meng: e.g. meng+atur
|
||||
-- "k" + enal
|
||||
-- => "meng" + enal ; -- replace k with meng
|
||||
|
||||
-- "b" + _
|
||||
-- => "mem" + makan ; -- prefix mem: e.g. mem+beli
|
||||
-- ("p"|"f") + ikir
|
||||
-- => "mem" + ikir ; -- replace p/f with mem
|
||||
|
||||
-- ("j"|"c"|"z"|"d") + _
|
||||
-- => "men" + makan ; -- prefix men: e.g. men+jadi
|
||||
-- "t" + ipu
|
||||
-- => "men" + ipu ; -- replace t with men
|
||||
|
||||
-- "s" + alak
|
||||
-- => "meny" + alak ; -- replace s with meny
|
||||
|
||||
-- ("r"|"l"|"w"|"y"|"m"|"n"|"ny"|"ng") + _
|
||||
-- => "me" + makan ; -- prefix me
|
||||
|
||||
-- -- We can throw an error
|
||||
-- -- _ => Predef.error "Not a valid verb root" ;
|
||||
|
||||
-- -- or we can let it pass with some default allomorph
|
||||
-- _ => "meng" + makan
|
||||
-- } ;
|
||||
|
||||
-- prefixBer : Str -> Str = \jalan -> case jalan of {
|
||||
-- -- Exception
|
||||
-- "ajar" => "belajar" ;
|
||||
|
||||
-- -- Drop the r
|
||||
-- (#c + "er" + _ -- be+kerja
|
||||
-- |"r" + _ ) -- be+rehat
|
||||
-- => "be" + jalan ;
|
||||
|
||||
-- -- Default allomorph: ber
|
||||
-- _ => "ber" + jalan
|
||||
-- } ;
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Nouns
|
||||
|
||||
param
|
||||
Case = Nom | Acc | Dat | Soc | Gen | Instr | Loc | Abl ;
|
||||
-- Number = Already available from ParamX.gf under "common" folder
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Numerals
|
||||
|
||||
--param
|
||||
-- DForm = Indep | Attrib ;
|
||||
|
||||
-- CardOrd = NOrd | NCard ;
|
||||
|
||||
NumType = NoNum Number | IsNumber ;
|
||||
|
||||
--oper
|
||||
-- isNum : NumType -> Bool = \nt -> case nt of {
|
||||
-- NoNum _ => False ;
|
||||
-- _ => True
|
||||
-- } ;
|
||||
|
||||
-- toNum : NumType -> Number = \nt -> case nt of {
|
||||
-- NoNum n => n ;
|
||||
-- _ => Sg
|
||||
-- } ;
|
||||
--------------------------------------------------------------------------------
|
||||
-- Adjectives
|
||||
|
||||
--param
|
||||
-- AForm = TODOAdj ;
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Prepositions
|
||||
--param
|
||||
-- PrepType = DirObj | EmptyPrep | OtherPrep ;
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Adverbs
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Verbs
|
||||
param
|
||||
--Tense = Already available from ParamX.gf under "common" folder
|
||||
Gender = Masc | Fem | Neu | Hon | Hum ; -- Male, Female, Neuter, Honorary, Humble
|
||||
VForm = VF Person Number | VFP3 Number Gender ;
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Clauses
|
||||
|
||||
--param
|
||||
|
||||
-- ClType = Statement | PolarQuestion | WhQuestion | Subord ;
|
||||
|
||||
--}
|
||||
}
|
||||
Reference in New Issue
Block a user