From e89fdae2fa1626348d8025824a7469252fa85e42 Mon Sep 17 00:00:00 2001 From: aarne Date: Mon, 22 Jun 2009 15:39:08 +0000 Subject: next-lib renamed to lib, lib to old-lib --- next-lib/src/italian/DiffIta.gf | 201 ---------------------------------------- 1 file changed, 201 deletions(-) delete mode 100644 next-lib/src/italian/DiffIta.gf (limited to 'next-lib/src/italian/DiffIta.gf') diff --git a/next-lib/src/italian/DiffIta.gf b/next-lib/src/italian/DiffIta.gf deleted file mode 100644 index d6ab22238..000000000 --- a/next-lib/src/italian/DiffIta.gf +++ /dev/null @@ -1,201 +0,0 @@ ---# -path=.:../romance:../abstract:../common:prelude - -instance DiffIta of DiffRomance = open CommonRomance, PhonoIta, BeschIta, Prelude in { - - flags optimize=all ; - - param - Prepos = P_di | P_a | P_da | P_in | P_su | P_con ; - VType = VHabere | VEsse | VRefl ; - - oper - dative : Case = CPrep P_a ; - genitive : Case = CPrep P_di ; - - prepCase = \c -> case c of { - Nom | Acc => [] ; - CPrep p => case p of { - P_di => "di" ; - P_a => pre {"a" ; "ad" / vocale} ; - P_da => "da" ; - P_in => "in" ; - P_su => "su" ; - P_con => "con" - } - } ; - - artDef : Gender -> Number -> Case -> Str = \g,n,c -> - case of { - <_, _, CPrep P_di> => prepArt "de" ; - <_, _, CPrep P_da> => prepArt "da" ; - <_, _, CPrep P_a> => prepArt "a" ; - <_, _, CPrep P_in> => prepArt "ne" ; - <_, _, CPrep P_su> => prepArt "su" ; - <_, _, CPrep P_con> => prepArt "co" ; - => elision "il" "l'" "lo" ; - => elision "la" "l'" "la" ; - => elision "i" "gli" "gli" ; - => "le" - } - where { - prepArt : Tok -> Tok = \de -> case of { - => elision (de + "l") (de + "ll'") (de + "llo") ; - => elision (de + "i") (de + "gli") (de + "gli") ; - => elision (de + "lla") (de + "ll'") (de + "lla") ; - => de + "lle" - } - } ; - - --- In these two, "de de/du/des" becomes "de". - - artIndef = \g,n,c -> case of { - => prepCase c ++ - genForms (elision "un" "un" "uno") (elision "una" "un'" "una") ! g ; - _ => prepCase c - } ; - - possCase = artDef ; - - partitive = \g,c -> case c of { - CPrep P_di => "di" ; - _ => prepCase c ++ artDef g Sg (CPrep P_di) - } ; - - conjunctCase : NPForm -> NPForm = \c -> case c of { - Ton Nom | Aton Nom => Ton Nom ; - _ => Ton Acc - } ; - - auxVerb : VType -> (VF => Str) = \vtyp -> case vtyp of { - VHabere => avere_V.s ; - _ => copula.s - } ; - - partAgr : VType -> VPAgr = \vtyp -> case vtyp of { - VHabere => vpAgrNone ; - _ => VPAgrSubj - } ; - - vpAgrClit : Agr -> VPAgr = \a -> - VPAgrClit a.g a.n ; --- subty - - pronArg = \n,p,acc,dat -> - let - pacc = case acc of { --- only accusative refl handled - CRefl => case p of { - P3 => "si" ; - _ => argPron Fem n p Acc False --- no clitic after acc - } ; - CPron ag an ap => argPron ag an ap Acc False ; - _ => [] - } ; - hasAcc = case acc of { - CNone => False ; - _ => True - } ; - hasDat = case dat of { - CNone => False ; - _ => True - } ; - pdat = case dat of { - CPron ag an ap => argPron ag an ap dative hasAcc ; - _ => [] - } ; - in - ; - - infForm n p x y = (pronArg n p x y).p3 ; - - mkImperative b p vp = { - s = \\pol,aag => - let - pe = case b of {True => P3 ; _ => p} ; - agr = aag ** {p = pe} ; - clpr = ; ----e pronArg agr.n agr.p vp.clAcc vp.clDat ; - verb = case of { - => (vp.s ! VPInfinit Simul clpr.p3).inf ! aag ; - _ => (vp.s ! VPImperat).fin ! agr - } ; - neg = vp.neg ! pol ; - compl = neg.p2 ++ clpr.p2 ++ vp.comp ! agr ++ vp.ext ! pol - in - neg.p1 ++ verb ++ bindIf clpr.p3 ++ clpr.p1 ++ compl ; - } ; - - negation : Polarity => (Str * Str) = table { - Pos => <[],[]> ; - Neg => <"non",[]> - } ; - - conjThan = "che" ; --- di - conjThat = "che" ; - - subjIf = "se" ; - - clitInf b cli inf = inf ++ bindIf b ++ cli ; - - relPron : Bool => AAgr => Case => Str = \\b,a,c => - case c of { - Nom | Acc => "che" ; - CPrep P_di => "cui" ; - _ => prepCase c ++ "cui" --- ilquale - } ; - - pronSuch : AAgr => Str = aagrForms "tale" "tale" "tali" "tali" ; - - quelPron : AAgr => Str = aagrForms "quale" "quale" "quali" "quali" ; - - partQIndir = "ciņ" ; - - reflPron : Number -> Person -> Case -> Str = - let - cases : (x,y : Str) -> (Case -> Str) = \me,moi,c -> case c of { - Acc | CPrep P_a => me ; - _ => moi - } ; - in - \n,p -> case of { - => cases "mi" "me" ; - => cases "ti" "te" ; - => cases "ci" "noi" ; -- unlike French with just one alt! - => cases "vi" "voi" ; - _ => cases "si" "se" - } ; - - argPron : Gender -> Number -> Person -> Case -> Bool -> Str = - let - cases : (x,y,z : Str) -> Case -> Bool -> Str = - \ci,ce,noi,c,isPre -> case c of { - Acc | CPrep P_a => if_then_Str isPre ce ci ; - _ => noi - } ; - cases4 : (x,y,z,u : Str) -> Case -> Bool -> Str = - \lo,gli,glie,lui,c,isPre -> case c of { - Acc => lo ; - CPrep P_a => if_then_Str isPre glie gli ; - _ => lui - } ; - in - \g,n,p -> case of { - <_,Sg,P1> => cases "mi" "me" "me" ; - <_,Sg,P2> => cases "ti" "te" "te" ; - <_,Pl,P1> => cases "ci" "ce" "noi" ; -- unlike French with just one alt! - <_,Pl,P2> => cases "vi" "ve" "voi" ; - => cases4 "lo" "gli" "glie" "lui" ; - => cases4 "la" "le" "glie" "lei" ; - <_, Pl,P3> => cases4 "li" "li" "glie" "loro" - } ; - - vRefl : VType = VRefl ; - isVRefl : VType -> Bool = \ty -> case ty of { - VRefl => True ; - _ => False - } ; - - auxPassive : Verb = venire_V ; - - copula = verbBesch (essere_1 "essere") ** {vtyp = VEsse} ; - avere_V = verbBesch (avere_2 "avere") ** {vtyp = VHabere} ; - venire_V = verbBesch (venire_110 "venire") ** {vtyp = VEsse} ; -} -- cgit v1.2.3