summaryrefslogtreecommitdiff
path: root/old-lib/resource/catalan/DiffCat.gf
diff options
context:
space:
mode:
authoraarne <aarne@chalmers.se>2009-12-09 09:47:16 +0000
committeraarne <aarne@chalmers.se>2009-12-09 09:47:16 +0000
commitc8ceed08efcc0bdc1fcbd89bce643d9f52f0991b (patch)
tree5f0b314341c129eba1bc67b8b887fb8a4486fad8 /old-lib/resource/catalan/DiffCat.gf
parent101df06f6c8380328d4266adadac3ab6d1bac0b3 (diff)
moving a few things to deprecated
Diffstat (limited to 'old-lib/resource/catalan/DiffCat.gf')
-rw-r--r--old-lib/resource/catalan/DiffCat.gf179
1 files changed, 0 insertions, 179 deletions
diff --git a/old-lib/resource/catalan/DiffCat.gf b/old-lib/resource/catalan/DiffCat.gf
deleted file mode 100644
index 1b41659f3..000000000
--- a/old-lib/resource/catalan/DiffCat.gf
+++ /dev/null
@@ -1,179 +0,0 @@
---# -path=.:../romance:../abstract:../common:prelude
-
-instance DiffCat of DiffRomance = open CommonRomance, PhonoCat, BeschCat, Prelude in {
-
- flags optimize=noexpand ;
-
- param
- Prepos = P_de | P_a ;
- VType = VHabere | VRefl ;
-
-oper
- dative : Case = CPrep P_a ;
- genitive : Case = CPrep P_de ;
-
- prepCase = \c -> case c of {
- Nom => [] ;
- Acc => [] ;
- CPrep P_de => "de" ;
- CPrep P_a => "a"
- } ;
-
-
- artDef : Gender -> Number -> Case -> Str = \g,n,c ->
- case <g,n,c> of {
- <Masc,Sg, CPrep P_de> => pre {"del" ; ["de l'"] / vocalForta} ;
- <Masc,Sg, CPrep P_a> => pre {"al" ; ["a l'"] / vocalForta} ;
- <Masc,Sg, _> => elisEl ;
- <Fem, Sg, _> => prepCase c ++ elisLa ;
- <_, Pl, CPrep P_de> => "dels" ;
- <_, Pl, CPrep P_a> => "als" ;
- <Masc, Pl, _ > => "els" ;
- <Fem, Pl, _ > => "les"
- } ;
-
-
-
- artIndef = \g,n,c -> case <n,c> of {
- <Sg,CPrep P_de> => genForms ["d' un"] ["d' una"] ! g ;
- <Pl,CPrep P_de> => genForms ["d' uns"] ["d' unes"] ! g ;
- <Sg,_> => prepCase c ++ genForms "un" "una" ! g ;
- <Pl,_> => prepCase c ++ genForms "uns" "unes" ! g
- } ;
-
-
-
- possCase = \_,_,c -> prepCase c ;
-
- partitive = \g,c -> case c of {
- CPrep P_de => "de" ;
- _ => prepCase c ++ artDef g Sg (CPrep P_de)
- } ;
-
- conjunctCase : NPForm -> NPForm = \c -> case c of {
- Ton Nom | Aton Nom => Ton Nom ;
- _ => Ton Acc
- } ;
-
- auxVerb : VType -> (VF => Str) = \_ -> haver_V.s ;
-
- partAgr : VType -> VPAgr = \vtyp -> vpAgrNone ;
-
- vpAgrClit : Agr -> VPAgr = \a ->
- vpAgrNone ;
-
- pronArg = \n,p,acc,dat ->
- let
- paccp = case acc of {
- CRefl => <reflPron n p Acc, p,True> ;
- CPron ag an ap => <argPron ag an ap Acc, ap,True> ;
- _ => <[],P2,False>
- } ;
- pdatp = case dat of {
- CPron ag an ap => <argPron ag an ap dative, ap,True> ;
- _ => <[],P2,False>
- }
- in case <paccp.p2, pdatp.p2> of {
- ---- AR 8/6/2008 efficiency problem in pgf generation:
- ---- replace the case expr with
- ---- a constant produces an error in V3 predication with two pronouns
- ---- <P3,P3> => <"se" ++ paccp.p1, [],True> ;
- _ => <pdatp.p1 ++ paccp.p1, [],orB paccp.p3 pdatp.p3>
- } ;
-
- --case <p,acc,dat> of {
- -- <Sg,P2,CRefl,CPron {n = Sg ; p = P1}> => <"te" ++ "me", []> ;
- -- <_,_,CPron {n = Sg ; p = P2},CPron {n = Sg ; p = P1}> => <"te" ++ "me", []> ;
-
- infForm _ _ _ _ = True ;
-
- mkImperative _ p vp = { --- politeness
- s = \\pol,aag =>
- let
- agr = aag ** {p = p} ;
- verb = case <aag.n, pol> of {
- <Sg,Neg> => (vp.s ! VPFinite (VPres Conjunct) Simul).fin ! agr ;
- _ => (vp.s ! VPImperat).fin ! agr
- } ;
- neg = vp.neg ! pol ;
- clpr = pronArg agr.n agr.p vp.clAcc vp.clDat ;
- 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 => <"no",[]>
- } ;
-
- conjThan = "que" ;
- conjThat = "que" ;
- subjIf = "si" ;
-
-
-
- clitInf b cli inf = inf ++ bindIf b ++ cli ; --- JS copied from DiffSpa
-
- relPron : Bool => AAgr => Case => Str = \\b,a,c =>
- case c of {
- Nom | Acc => "que" ;
- CPrep P_a => "cuyo" ;
- _ => prepCase c ++ "cuyo"
- } ;
-
- pronSuch : AAgr => Str = aagrForms "tal" "tal" "tals" "tals" ;
-
- quelPron : AAgr => Str = aagrForms "qual" "qual" "quals" "quals" ;
-
- partQIndir = [] ; ---- ?
-
- reflPron : Number -> Person -> Case -> Str = \n,p,c ->
- let pro = argPron Fem n p c
- in
- case p of {
- P3 => case c of {
- Acc | CPrep P_a => "se" ;
- _ => "sÌ"
- } ;
- _ => pro
- } ;
-
- argPron : Gender -> Number -> Person -> Case -> Str =
- let
- cases : (x,y : Str) -> Case -> Str = \me,moi,c -> case c of {
- Acc | CPrep P_a => me ;
- _ => moi
- } ;
- cases3 : (x,y,z : Str) -> Case -> Str = \les,leur,eux,c -> case c of {
- Acc => les ;
- CPrep P_a => leur ;
- _ => eux
- } ;
- in
- \g,n,p -> case <g,n,p> of {
- <_,Sg,P1> => cases "em" "mí" ;
- <_,Sg,P2> => cases "et" "tú" ;
- <_,Pl,P1> => cases "ens" "nosaltres" ; --- nosotros
- <_,Pl,P2> => cases "us" "vosaltres" ; --- vosotros
- <Fem,Sg,P3> => cases3 "la" "li" "ella" ;
- <Masc, Sg,P3> => cases3 "el" "li" "ell" ;
- <Fem,Pl,P3> => cases3 "les" "les" "elles" ;
- <Masc, Pl,P3> => cases3 "els" "els" "ells"
- } ;
-
- vRefl : VType = VRefl ;
- isVRefl : VType -> Bool = \ty -> case ty of {
- VRefl => True ;
- _ => False
- } ;
-
- auxPassive : Verb = copula ;
-
- copula = verbBeschH (ser_52 "ser") ;
-
- haver_V : Verb = verbBeschH (haver_59 "haver") ;
-
- verbBeschH : Verbum -> Verb = \v -> verbBesch v ** {vtyp = VHabere} ;
-
-}