diff --git a/resource-1.0/api/Combinators.gf b/resource-1.0/api/Combinators.gf index 6373fa7ae..6204bc525 100644 --- a/resource-1.0/api/Combinators.gf +++ b/resource-1.0/api/Combinators.gf @@ -12,19 +12,19 @@ incomplete resource Combinators = open Grammar in { --2 Predication pred : overload { - pred : V -> NP -> Cl ; - pred : V2 -> NP -> NP -> Cl ; - pred : V3 -> NP -> NP -> NP -> Cl ; - pred : V -> NP -> NP -> Cl ; - pred : A -> NP -> Cl ; - pred : A2 -> NP -> NP -> Cl ; - pred : A -> NP -> NP -> Cl ; - pred : N -> NP -> Cl ; - pred : CN -> NP -> Cl ; - pred : NP -> NP -> Cl ; - pred : N -> NP -> NP -> Cl ; - pred : Adv -> NP -> Cl ; - pred : Prep -> NP -> NP -> Cl + pred : V -> NP -> Cl ; -- x converges + pred : V2 -> NP -> NP -> Cl ; -- x intersects y + pred : V3 -> NP -> NP -> NP -> Cl ; -- x intersects y at z + pred : V -> NP -> NP -> Cl ; -- x and y intersect + pred : A -> NP -> Cl ; -- x is even + pred : A2 -> NP -> NP -> Cl ; -- x is divisible by y + pred : A -> NP -> NP -> Cl ; -- x and y are equal + pred : N -> NP -> Cl ; -- x is a maximum + pred : CN -> NP -> Cl ; -- x is a local maximum + pred : NP -> NP -> Cl ; -- x is the neutral element + pred : N -> NP -> NP -> Cl ; -- x and y are inverses + pred : Adv -> NP -> Cl ; -- x is in scope + pred : Prep -> NP -> NP -> Cl -- x is outside y } ; --2 Function application diff --git a/resource-1.0/finnish/CatFin.gf b/resource-1.0/finnish/CatFin.gf index bdded05b5..c00d6589f 100644 --- a/resource-1.0/finnish/CatFin.gf +++ b/resource-1.0/finnish/CatFin.gf @@ -1,4 +1,4 @@ -concrete CatFin of Cat = CommonX - [Adv] ** open ResFin, Prelude in { +concrete CatFin of Cat = CommonX ** open ResFin, Prelude in { flags optimize=all_subs ; @@ -70,28 +70,24 @@ concrete CatFin of Cat = CommonX - [Adv] ** open ResFin, Prelude in { Conj = {s : Str ; n : Number} ; DConj = {s1,s2 : Str ; n : Number} ; Subj = {s : Str} ; + Prep = Compl ; -- Open lexical classes, e.g. Lexicon - V = ResFin.V ; - V2 = ResFin.V2 ; - VA = ResFin.VA ; - VS = ResFin.VS ; - VQ = ResFin.VQ ; - V2A = ResFin.V2A ; - VV = ResFin.VV ; - V3 = ResFin.V3 ; + V, VS, VQ = Verb1 ; -- = {s : VForm => Str ; sc : Case} ; + V2, VA = Verb1 ** {c2 : Compl} ; + V2A = Verb1 ** {c2, c3 : Compl} ; + VV = Verb1 ; ---- infinitive form + V3 = Verb1 ** {c2, c3 : Compl} ; - A = ResFin.A ; - A2 = ResFin.A2 ; + A = {s : Degree => AForm => Str} ; + A2 = {s : Degree => AForm => Str ; c2 : Compl} ; - N = ResFin.N ; - N2 = ResFin.N2 ; - N3 = ResFin.N3 ; - PN = ResFin.PN ; - - Adv = ResFin.Adv ; - Prep = ResFin.Prep ; + N = {s : NForm => Str} ; + N2 = {s : NForm => Str} ** {c2 : Compl} ; + N3 = {s : NForm => Str} ** {c2,c3 : Compl} ; + PN = {s : Case => Str} ; +oper Verb1 = {s : VForm => Str ; sc : NPForm} ; } diff --git a/resource-1.0/finnish/GrammarFin.gf b/resource-1.0/finnish/GrammarFin.gf index 9ed42e3b5..6ae2ee9ea 100644 --- a/resource-1.0/finnish/GrammarFin.gf +++ b/resource-1.0/finnish/GrammarFin.gf @@ -11,7 +11,7 @@ concrete GrammarFin of Grammar = RelativeFin, ConjunctionFin, PhraseFin, - TextX - [Adv], + TextX, IdiomFin, StructuralFin ** { diff --git a/resource-1.0/finnish/ParadigmsFin.gf b/resource-1.0/finnish/ParadigmsFin.gf index 55331f940..df83ed1f9 100644 --- a/resource-1.0/finnish/ParadigmsFin.gf +++ b/resource-1.0/finnish/ParadigmsFin.gf @@ -25,7 +25,8 @@ resource ParadigmsFin = open (Predef=Predef), Prelude, - MorphoFin + MorphoFin, + CatFin in { flags optimize=noexpand ; diff --git a/resource-1.0/finnish/ResFin.gf b/resource-1.0/finnish/ResFin.gf index a9f81764d..03d92dbe7 100644 --- a/resource-1.0/finnish/ResFin.gf +++ b/resource-1.0/finnish/ResFin.gf @@ -569,26 +569,4 @@ oper a = agrP3 Sg ; -- does not matter (--- at least in Slash) isPron = False -- has no special accusative } ; - --- To export - - N : Type = {s : NForm => Str} ; - N2 = {s : NForm => Str} ** {c2 : Compl} ; - N3 = {s : NForm => Str} ** {c2,c3 : Compl} ; - PN = {s : Case => Str} ; - - A = {s : Degree => AForm => Str} ; - A2 = {s : Degree => AForm => Str ; c2 : Compl} ; - - V, VS, VQ = Verb1 ; -- = {s : VForm => Str ; sc : Case} ; - V2, VA = Verb1 ** {c2 : Compl} ; - V2A = Verb1 ** {c2, c3 : Compl} ; - VV = Verb1 ; ---- infinitive form - V3 = Verb1 ** {c2, c3 : Compl} ; - - Verb1 = {s : VForm => Str ; sc : NPForm} ; - - Prep = Compl ; - Adv = {s : Str} ; - }