concrete StructuralSnd of Structural = CatSnd ** open MorphoSnd, ParadigmsSnd, Prelude in { flags optimize=all ; coding = utf8; lin above_Prep = mkPrep "mT'y " ; after_Prep = mkPrep "k'an pWe' " ; all_Predet = ss "sB' " ; almost_AdA, almost_AdN = mkAdN "gh't'W kry " ; although_Subj = ss "jytWt'yk " ; always_AdV = ss "h'myXh' " ; and_Conj = sd2 [] "A" ** {n = Pl} ; because_Subj = ss "c'akat' ty " ; before_Prep = mkPrep "pyh'ryn" ; behind_Prep = mkPrep "pT!ty " ; between_Prep = mkPrep " jy Wc my " ; both7and_DConj = sd2 "Be'y " "A" ** {n = Pl} ; but_PConj = ss "pr" ; by8agent_Prep = mkPrep "h'T'an " ; by8means_Prep = mkPrep "kan" ; can8know_VV,can_VV = mkV "sgh't' " ** { isAux = True} ; during_Prep = mkPrep "Wc M" ; either7or_DConj = sd2 "kWe'y ByW " "ya" ** {n = Sg} ; --everybody_NP = MassNP (UseN (ParadigmsSnd.mkN "h'r kWe'y" "h'r kWe'y" "h'r kWe'y" "h'r kWe'y" Masc )); -- not a good way coz need to include NounSnd every_Det = mkDet "h'r h'k " "h'r h'k " "h'r h'k " "h'r h'k " Sg; --everything_NP = MassNP (UseN (ParadigmsSnd.mkN "h'r Xy " "h'r Xy " "h'r Xy " "sB' kjh' " Masc )); everywhere_Adv = mkAdv "h'r h'nd' " ; few_Det = mkDet "kjh' " "kjh' " "kjh' " "kjh' " Pl ; first_Ord = {s = "ph'ryWn" ; n = Sg} ; --DEPRECATED for_Prep = mkPrep "Lae'y "; from_Prep = mkPrep "WTan" ; he_Pron = personalPN "h'W" "h'W" "" ["h'W "] ["h'W"] Sg Masc Pers3_Distant ; here_Adv = mkAdv "h'ty" ; here7to_Adv = mkAdv "ajh'W" ; here7from_Adv = mkAdv ["h'yD'anh'n"] ; how_IAdv = ss "ke'yn" ; how8many_IDet = makeIDet "kytra" "kytra" Pl ; how8much_IAdv = ss "kytra"; if_Subj = ss "jykD'h'n" ; in8front_Prep = mkPrep ["jy samh'Wn"] ; i_Pron = personalPN "man" "mh'nja " "mh'njW " "man" " " Sg Masc Pers1; in_Prep = mkPrep "M" ; it_Pron = personalPN "ah'a" "h'n" "ah'W" "ah'a" "" Sg Masc Pers3_Near; less_CAdv = {s = "gh'T" ; p = ""} ; many_Det = mkDet "gh't'a" "gh't'y" "kafy" "kytra" Pl ; more_CAdv = {s = "Wd'yk"; p = "gh't'a" } ; most_Predet = ss "sB' k'an gh't'W" ; much_Det = mkDet "gh't'W" "gh't'W" "gh't'W" "gh't'W" Sg ; --must_VV = { -- s = table { -- VVF VInf => ["have to"] ; -- VVF VPres => "must" ; -- VVF VPPart => ["had to"] ; -- VVF VPresPart => ["having to"] ; -- VVF VPast => ["had to"] ; --# notpresent -- VVPastNeg => ["hadn't to"] ; --# notpresent -- VVPresNeg => "mustn't" -- } ; -- isAux = True -- } ; -----b no_Phr = ss "no" ; no_Utt = ss "na" ; on_Prep = mkPrep "mT'an" ; one_Quant = demoPN "h'k" "h'k" "h'k" ; -- DEPRECATED only_Predet = ss "Srf" ; or_Conj = sd2 [] "ya" ** {n = Sg} ; otherwise_PConj = ss "n t pWe'y" ; part_Prep = mkPrep "HsW" ; possess_Prep = mkPrep[ "jW ya jy"] ; please_Voc = ss "mh'rbany" ; quite_Adv = ss "c'D't' " ; she_Pron = personalPN "h'We'" "h'W" "h'W" ["h'We'"] ["h'We'"] Sg Fem Pers3_Distant ; so_AdA = ss "an kry" ; --somebody_NP = MassNP (UseN (ParadigmsSnd.mkN "kWe'y" "kWe'y" "kWe'y" "kWe'y" Masc )); someSg_Det = mkDet "kjh' " "kjh' " "kjh' " "kjh' " Sg ; somePl_Det = mkDet "kjh' " "kjh' " "kjh' " "kjh' " Pl ; --something_NP = MassNP (UseN (ParadigmsSnd.mkN "kWe'y Xy" "kWe'y Xy" "kWe'y Xy" "kWe'y XyWn" Masc )); somewhere_Adv = mkAdv "kT'y" ; that_Quant = demoPN "jykW" "" "" ; that_Subj = ss "ah'a" ; there_Adv = mkAdv "aty" ; there7to_Adv = mkAdv ["h'ty"] ; there7from_Adv = mkAdv ["h'tan"] ; therefore_PConj = ss "an kry" ; they_Pron = personalPN "ah'y" "ah'y" "ah'y" ["ah'y jW"] ["ah'y jW"] Pl Masc Pers3_Distant ; ---- this_Quant = demoPN "h'y" "h'n" ""; through_Prep = mkPrep "mnjh'an" ; under_Prep = mkPrep " h'yT!an" ; -- ** {lock_Prep = <>}; too_AdA = ss "byHd"; to_Prep = mkPrep "D'anh'n" ; -- ** {lock_Prep = <>}; very_AdA = ss "tmam" ; want_VV = mkV "cah't' " ** { isAux = False} ; we_Pron = personalPN "asan" "asan" "asan" "asanjo" "asanjo" Pl Masc Pers1 ; whatSg_IP = mkIP "c'a" "c'W" "" "" Sg Masc ; whatPl_IP = mkIP "c'a" "c'W " " " "" Pl Masc ; when_IAdv = ss "kD'h'n" ; when_Subj = ss "jD'h'n" ; where_IAdv = ss "kT'y" ; --which_IQuant = {s = \\_ => "kh'RW"} ; which_IQuant = mkIQuant "jykW" "jyky" "jyka" "jh'RW" ; whichPl_IDet = makeDet "jykY" "jnh'n" ; whichSg_IDet = makeDet "jykW " "jyka" ; whoSg_IP = mkIP "kyr" "kh'njy" "kh'njo" "" Sg Masc ; whoPl_IP = mkIP "kyr" "kh'nja" "kh'nja" "" Pl Masc ; why_IAdv = ss "c'W" ; without_Prep = mkPrep "k'an sWae' " ; with_Prep = mkPrep "san" ; yes_Phr = ss "h'a" ; yes_Utt = ss "h'a" ; youSg_Pron = personalPN "tWn" "tWn" "tWn" "th'njW" "th'njy" Sg Masc Pers2_Casual ; youPl_Pron = personalPN "tWh'an" "tWh'an" "tWh'an" "tWh'anjW" "tWh'anjy" Pl Masc Pers2_Casual ; youPol_Pron = personalPN "tWh'an" "tWh'an" "tWh'an" "tWh'an jW" "tWh'an jy" Pl Masc Pers2_Respect ; no_Quant = demoPN " c'W n" "c'W n" "c'W n " ; not_Predet = {s="n"} ; if_then_Conj = sd2 "jykD'h'n" "t" ** {n = Sg} ; at_least_AdN = mkAdN ["gh'T my gh'T"] ; at_most_AdN = mkAdN ["gh't'y k'an gh't'W"]; --nothing_NP = MassNP (UseN (ParadigmsSnd.mkN "kjh' Xy n" "kjh' Xy n" "kjh' Xy n" "kjh' Xy n" "kjh' Xy n" "kjh' Xy n" Masc )); except_Prep = mkPrep "sWae' " ; --nobody_NP = MassNP (UseN (ParadigmsSnd.mkN "kW b n" "kW b n" "kW b n" "kW b n" "kW b n" "kW b n" Masc )); as_CAdv = {s = "jye'n" ; p = "jh'RW"} ; have_V2 = mkV2 (mkV "rk't' ") "" ; language_title_Utt = ss "BWly" ; }