diff --git a/lib/src/catalan/MakeStructuralCat.gf b/lib/src/catalan/MakeStructuralCat.gf new file mode 100644 index 000000000..d2bed918b --- /dev/null +++ b/lib/src/catalan/MakeStructuralCat.gf @@ -0,0 +1,23 @@ +--# -path=.:../romance:../common:../abstract + +resource MakeStructuralCat = open CatCat, (P = ParadigmsCat), MorphoCat, Prelude in { + +oper + mkConj : Str -> Str -> Number -> Conj = \x,y,n -> + {s1 = x ; s2 = y ; n = n ; lock_Conj = <>} ; + mkSubj : Str -> Subj = \x -> + {s = x ; m = Indic ; lock_Subj = <>} ; + mkSubjSubj : Str -> Subj = \x -> + {s = x ; m = Conjunct ; lock_Subj = <>} ; + + mkIQuant : Str -> IQuant = \s -> + {s = \\_,_,c => prepCase c ++ s ; lock_IQuant = <>} ; + + mkPredet : Str -> Str -> Prep -> Bool -> Predet = \m,f,c,p -> lin Predet { + s = \\g,k => prepCase k ++ case g.g of {Masc => m ; Fem => f} ; + c = c.c ; + a = if_then_else PAgr p (PAg Sg) PNoAg ---- e,g, "chacun de"; other possibilities? + } ; + + +} diff --git a/lib/src/spanish/MakeStructuralSpa.gf b/lib/src/spanish/MakeStructuralSpa.gf new file mode 100644 index 000000000..4caa705e1 --- /dev/null +++ b/lib/src/spanish/MakeStructuralSpa.gf @@ -0,0 +1,23 @@ +--# -path=.:../romance:../common:../abstract + +resource MakeStructuralSpa = open CatSpa, (P = ParadigmsSpa), MorphoSpa, Prelude in { + +oper + mkConj : Str -> Str -> Number -> Conj = \x,y,n -> + {s1 = x ; s2 = y ; n = n ; lock_Conj = <>} ; + mkSubj : Str -> Subj = \x -> + {s = x ; m = Indic ; lock_Subj = <>} ; + mkSubjSubj : Str -> Subj = \x -> + {s = x ; m = Conjunct ; lock_Subj = <>} ; + + mkIQuant : Str -> IQuant = \s -> + {s = \\_,_,c => prepCase c ++ s ; lock_IQuant = <>} ; + + mkPredet : Str -> Str -> Prep -> Bool -> Predet = \m,f,c,p -> lin Predet { + s = \\g,k => prepCase k ++ case g.g of {Masc => m ; Fem => f} ; + c = c.c ; + a = if_then_else PAgr p (PAg Sg) PNoAg ---- e,g, "chacun de"; other possibilities? + } ; + + +}