From c98dcdfc4f8a5262846ac95b2cf3a7c55cdfb72a Mon Sep 17 00:00:00 2001 From: 'Adam Slaski Date: Sat, 24 Oct 2009 12:14:56 +0000 Subject: [PATCH] symbolpol and fixing typo in verbpol --- lib/src/polish/LexiconPol.gf | 2 +- lib/src/polish/ResPol.gf | 2 +- lib/src/polish/SymbolPol.gf | 60 +++++++++++++++++++----------------- lib/src/polish/VerbPol.gf | 2 +- 4 files changed, 35 insertions(+), 31 deletions(-) diff --git a/lib/src/polish/LexiconPol.gf b/lib/src/polish/LexiconPol.gf index 1c9238b25..0a747b69e 100644 --- a/lib/src/polish/LexiconPol.gf +++ b/lib/src/polish/LexiconPol.gf @@ -285,7 +285,7 @@ lin sell_V3 = dirV3 (mkV "sprzedawać" conj57 "sprzedać" conj99); send_V3 = mkV3 (mkV "wysyłać" conj98 "wysłać" conj67 ) "" "do" accusative genitive ; talk_V3 = mkV3 (mkV "rozmawiać" conj98 "porozmawiać" conj98) "z" "о" instrumental locative; - give_V3 = mkV3 (mkV "dawać" conj57 "dać" conj99) "" "" Dat Acc ; + give_V3 = mkV3 (mkV "dawać" conj57 "dać" conj99) "" "" Acc Dat; fear_V2 = mkV2 (mkReflVerb (mkMonoVerb "bać" conjbac Imperfective)) "" Gen; hit_V2 = dirV2 (mkV "bić" conj51 "pobić" conj51); diff --git a/lib/src/polish/ResPol.gf b/lib/src/polish/ResPol.gf index ddfcd4ad2..690c909e6 100644 --- a/lib/src/polish/ResPol.gf +++ b/lib/src/polish/ResPol.gf @@ -1,4 +1,4 @@ ---# -path=.:../abstract:../common:../../prelude +--# -path=.:../abstract:../common:../prelude --# -coding=utf8 -- Ilona Nowak Wintersemester 2007/08 diff --git a/lib/src/polish/SymbolPol.gf b/lib/src/polish/SymbolPol.gf index ea0342487..dd0b82266 100644 --- a/lib/src/polish/SymbolPol.gf +++ b/lib/src/polish/SymbolPol.gf @@ -1,29 +1,41 @@ ---# -path=.:../abstract:../common +--# -path=.:../abstract:../common:../prelude + +concrete SymbolPol of Symbol = CatPol ** open Prelude, ResPol, AdjectiveMorphoPol in { -concrete SymbolPol of Symbol = CatPol ** open Prelude, ResPol in { -{- lin - SymbPN i = {s = addGenitiveS i.s ; g = Neutr} ; - IntPN i = {s = addGenitiveS i.s ; g = Neutr} ; - FloatPN i = {s = addGenitiveS i.s ; g = Neutr} ; - NumPN i = {s = i.s ; g = Neutr} ; + SymbPN i = {nom= i.s; voc=i.s; dep = \\_=>i.s; gn = NeutSg; p=P3} ; + IntPN i = {nom= i.s; voc=i.s; dep = \\_=>i.s; gn = NeutSg; p=P3} ; + FloatPN i = {nom= i.s; voc=i.s; dep = \\_=>i.s; gn = NeutSg; p=P3} ; + NumPN i = {nom= i.s!Nom!(Masc Inanimate); voc=i.s!Nom!(Masc Inanimate); dep = \\_=>i.s!Nom!(Masc Inanimate); gn = NeutSg; p=P3} ; CNIntNP cn i = { - s = \\c => cn.s ! Sg ! Nom ++ (addGenitiveS i.s) ! c ; - a = agrgP3 Sg cn.g - } ; - CNSymbNP det cn xs = { - s = \\c => det.s ++ cn.s ! det.n ! Nom ++ (addGenitiveS xs.s) ! c ; - a = agrgP3 det.n cn.g - } ; + nom= cn.s!Sg!Nom ++ i.s; + voc= cn.s!Sg!VocP ++ i.s; + dep = \\cc => cn.s !Sg !(extract_case! cc) ++ i.s; + gn = (accom_gennum !); + p=P3 + } ; + CNNumNP cn i = { - s = \\c => cn.s ! Sg ! Nom ++ i.s ! c ; - a = agrgP3 Sg cn.g - } ; + nom= cn.s!Sg!Nom ++ i.s!Nom!(Masc Inanimate); + voc= cn.s!Sg!VocP ++ i.s!Nom!(Masc Inanimate); + dep = \\cc => cn.s !Sg !(extract_case! cc) ++ i.s!Nom!(Masc Inanimate); + gn = (accom_gennum !); + p=P3 + } ; + + CNSymbNP kazdy facet xs = { + nom = (kazdy.s ! Nom ! facet.g) ++ (facet.s ! kazdy.n ! (accom_case! )) ++ xs.s; + voc = (kazdy.s ! VocP ! facet.g) ++ (facet.s ! kazdy.n ! (accom_case! )) ++ xs.s; + dep = \\cc => let c = extract_case! cc in + (kazdy.s ! c ! facet.g) ++ (facet.s ! kazdy.n ! (accom_case! )) ++ xs.s; + gn = (accom_gennum !); + p = P3 + } ; SymbS sy = sy ; - SymbNum sy = { s = addGenitiveS sy.s ; n = Pl ; hasCard = True } ; - SymbOrd sy = { s = \\c => sy.s ++ (regGenitiveS "th")!c} ; + SymbNum sy = { s = \\_,_=>sy.s; a=NoA; n=Pl }; + SymbOrd sy = { s = \\af => sy.s ++ (mkAtable (guess_model "-ty"))!af} ; lincat @@ -31,14 +43,6 @@ lincat lin MkSymb s = s ; - - BaseSymb = infixSS "and" ; + BaseSymb = infixSS "i" ; ConsSymb = infixSS "," ; - -oper - -- Note: this results in a space before 's, but there's - -- not mauch we can do about that. - addGenitiveS : Str -> Case => Str = \s -> - table { Gen => s ++ "'s"; _ => s } ; --} } diff --git a/lib/src/polish/VerbPol.gf b/lib/src/polish/VerbPol.gf index 0acd600d7..b7c4e641d 100644 --- a/lib/src/polish/VerbPol.gf +++ b/lib/src/polish/VerbPol.gf @@ -20,7 +20,7 @@ lin Slash3V3 v3 np = (setSufix (defVP (castv3 v3)) (\\p,gn => - v3.c2.s ++ np.dep ! (npcase !) )) + v3.c2.s ++ np.dep ! (npcase !) )) ** {c=v3.c}; -- ComplSlash : VPSlash -> NP -> VP ; -- love it