diff --git a/src/persian/ParadigmsPes.gf b/src/persian/ParadigmsPes.gf index f225ccaae..1a424ed77 100644 --- a/src/persian/ParadigmsPes.gf +++ b/src/persian/ParadigmsPes.gf @@ -112,10 +112,37 @@ oper mkV2 : (listen : V) -> (to : Prep) -> V2 -- V2 out of V. Use given preposition, no را for direct object. } ; - mkV3 : V -> (dir,indir : Str) -> V3 ; -- Takes a verb and two prepositions as strings (can be empty). If the verb takes را for direct object, it's the first Str argument. e.g. talk, با, دربارۀ - mkV3 v p q = lin V3 (v ** {c2 = prepOrRa p ; c3 = prepOrRa q}) ; + mkV3 = overload { + mkV3 : Str -> V3 -- Predictable V3, را for direct object, no prepositions. + = \s -> lin V3 (regV s ** {c2 = prepOrRa "را" ; c3 = prepOrRa []}) ; + mkV3 : V -> (dir,indir : Str) -> V3 -- Takes a verb and two prepositions or را as strings (can be empty). + = \v,p,q -> lin V3 (v ** {c2 = prepOrRa p ; c3 = prepOrRa q}) + } ; + + mkVQ = overload { + mkVQ : Str -> VQ -- predictable verb with question complement + = \s -> lin VQ (regV s) ; + mkVQ : V -> VQ -- VQ out of a verb + = \v -> lin VQ v + } ; + + mkVA = overload { + mkVA : Str -> VA -- predictable verb with adjective complement + = \s -> lin VA (regV s) ; + mkVA : V -> VA -- VA out of a verb + = \v -> lin VA v + } ; + + mkVS = overload { + mkVS : Str -> VS -- predictable verb with sentence complement + = \s -> lin VS (regV s) ; + mkVS : V -> VS -- VS out of a verb + = \v -> lin VS v + } ; mkVV = overload { + mkVV : Str -> VV -- Predictable VV, subjunctive complement, is auxiliary. + = \s -> lin VV (regV s ** {isAux = True ; compl = subjunctive ; isDef = False}) ; mkVV : V -> VV -- takes its VP complement in subjunctive. Is auxiliary. = \v -> v ** {isAux = True ; compl = subjunctive ; isDef = False} ; mkVV : VVForm -> V -> VV -- takes its VP complement in the given VVForm