From a549f20fab56867388d4b280c19e99b85b45a4ac Mon Sep 17 00:00:00 2001 From: aarne Date: Sun, 28 Mar 2010 19:29:06 +0000 Subject: [PATCH] Action category, more doc in Phrasebook --- src/abstract/Phrase.gf | 2 ++ src/api/Constructors.gf | 10 ++++++++-- src/english/MakeStructuralEng.gf | 4 ++-- src/english/PhraseEng.gf | 2 ++ src/finnish/MakeStructuralFin.gf | 2 +- src/finnish/PhraseFin.gf | 5 ++++- src/romance/PhraseRomance.gf | 2 ++ src/romanian/PhraseRon.gf | 3 +++ src/scandinavian/PhraseScand.gf | 3 +++ src/swedish/StructuralSwe.gf | 1 + 10 files changed, 28 insertions(+), 6 deletions(-) diff --git a/src/abstract/Phrase.gf b/src/abstract/Phrase.gf index 19e66b9b0..0951f4ae6 100644 --- a/src/abstract/Phrase.gf +++ b/src/abstract/Phrase.gf @@ -29,6 +29,8 @@ abstract Phrase = Cat ** { UttAdv : Adv -> Utt ; -- here UttVP : VP -> Utt ; -- to sleep UttCN : CN -> Utt ; -- house + UttCard : Card -> Utt ; -- five + UttAP : AP -> Utt ; -- fine -- The phrasal conjunction is optional. A sentence conjunction -- can also used to prefix an utterance. diff --git a/src/api/Constructors.gf b/src/api/Constructors.gf index b440c0346..f26e5e408 100644 --- a/src/api/Constructors.gf +++ b/src/api/Constructors.gf @@ -154,7 +154,10 @@ incomplete resource Constructors = open Grammar in { mkUtt : IAdv -> Utt ; -- 7. why --# notminimal mkUtt : NP -> Utt ; -- 8. John --# notminimal mkUtt : Adv -> Utt ; -- 9. here --# notminimal - mkUtt : VP -> Utt -- 10. to walk --# notminimal + mkUtt : VP -> Utt ; -- 10. to walk --# notminimal + mkUtt : CN -> Utt ; -- 11. beer --# notminimal + mkUtt : AP -> Utt ; -- 12. fine --# notminimal + mkUtt : Card -> Utt ; -- 13. five --# notminimal } ; --# notminimal -- The plural first-person imperative is a special construction. @@ -1361,7 +1364,10 @@ incomplete resource Constructors = open Grammar in { mkUtt : Adv -> Utt -- here = UttAdv ; mkUtt : VP -> Utt -- to sleep --# notminimal - = UttVP --# notminimal + = UttVP ; --# notminimal + mkUtt : CN -> Utt = UttCN ; --# notminimal + mkUtt : AP -> Utt = UttAP ; --# notminimal + mkUtt : Card -> Utt = UttCard ; --# notminimal } ; lets_Utt : VP -> Utt = ImpPl1 ; --# notminimal diff --git a/src/english/MakeStructuralEng.gf b/src/english/MakeStructuralEng.gf index 9f014bf63..606682ae8 100644 --- a/src/english/MakeStructuralEng.gf +++ b/src/english/MakeStructuralEng.gf @@ -5,9 +5,9 @@ resource MakeStructuralEng = open CatEng, ParadigmsEng, ResEng, MorphoEng, Prelu oper mkSubj : Str -> Subj = \x -> lin Subj {s = x} ; - mkNP : Str -> Number -> NP = \s,n -> + mkNP : Str -> ParadigmsEng.Number -> NP = \s,n -> lin NP (regNP s n) ; - mkIDet : Str -> Number -> IDet = \s,n -> + mkIDet : Str -> ParadigmsEng.Number -> IDet = \s,n -> lin IDet {s = s ; n = n} ; } diff --git a/src/english/PhraseEng.gf b/src/english/PhraseEng.gf index a423810ea..5241a5709 100644 --- a/src/english/PhraseEng.gf +++ b/src/english/PhraseEng.gf @@ -15,6 +15,8 @@ concrete PhraseEng of Phrase = CatEng ** open Prelude, ResEng in { UttVP vp = {s = infVP False vp (agrP3 Sg)} ; UttAdv adv = adv ; UttCN n = {s = n.s ! Sg ! Nom} ; + UttCard n = {s = n.s ! Nom} ; + UttAP ap = {s = ap.s ! agrP3 Sg} ; NoPConj = {s = []} ; PConjConj conj = {s = conj.s2} ; --- diff --git a/src/finnish/MakeStructuralFin.gf b/src/finnish/MakeStructuralFin.gf index 2c32709cb..9682486a0 100644 --- a/src/finnish/MakeStructuralFin.gf +++ b/src/finnish/MakeStructuralFin.gf @@ -3,7 +3,7 @@ resource MakeStructuralFin = open CatFin, ParadigmsFin, MorphoFin, Prelude in { oper - mkConj : Str -> Str -> Number -> Conj = \x,y,n -> + mkConj : Str -> Str -> ParadigmsFin.Number -> Conj = \x,y,n -> {s1 = x ; s2 = y ; n = n ; lock_Conj = <>} ; mkSubj : Str -> Subj = \x -> {s = x ; lock_Subj = <>} ; diff --git a/src/finnish/PhraseFin.gf b/src/finnish/PhraseFin.gf index 1b8e55b08..35fe44133 100644 --- a/src/finnish/PhraseFin.gf +++ b/src/finnish/PhraseFin.gf @@ -1,4 +1,4 @@ -concrete PhraseFin of Phrase = CatFin ** open ResFin in { +concrete PhraseFin of Phrase = CatFin ** open ResFin, (P = Prelude) in { lin PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ++ voc.s} ; @@ -14,6 +14,9 @@ concrete PhraseFin of Phrase = CatFin ** open ResFin in { UttNP np = {s = np.s ! NPCase Nom} ; UttVP vp = {s = infVP (NPCase Nom) Pos (agrP3 Sg) vp Inf1} ; UttAdv adv = adv ; + UttCN np = {s = np.s ! NCase Sg Nom} ; + UttAP np = {s = np.s ! P.False ! NCase Sg Nom} ; + UttCard n = {s = n.s ! Sg ! Nom} ; NoPConj = {s = []} ; PConjConj conj = {s = conj.s2} ; diff --git a/src/romance/PhraseRomance.gf b/src/romance/PhraseRomance.gf index fd3593053..b4427335d 100644 --- a/src/romance/PhraseRomance.gf +++ b/src/romance/PhraseRomance.gf @@ -18,6 +18,8 @@ incomplete concrete PhraseRomance of Phrase = UttVP vp = {s = infVP vp (agrP3 Fem Sg)} ; --- Agr UttAdv adv = adv ; UttCN n = {s = n.s ! Sg} ; + UttAP ap = {s = ap.s ! AF Masc Sg} ; + UttCard n = {s = n.s ! Masc} ; NoPConj = {s = []} ; PConjConj conj = {s = conj.s2} ; diff --git a/src/romanian/PhraseRon.gf b/src/romanian/PhraseRon.gf index 83f2c038f..bb89def5b 100644 --- a/src/romanian/PhraseRon.gf +++ b/src/romanian/PhraseRon.gf @@ -18,6 +18,9 @@ UttVP vp = let a = agrP3 Masc Sg in {s = "sã" ++ (flattenSimpleClitics vp.nrClit vp.clAcc vp.clDat (vp.isRefl ! a)) ++ conjVP vp a ++vp.comp ! a ++ vp.ext ! Pos} ; UttAdv adv = adv ; + UttCN cn = {s = cn.s ! Sg ! Indef ! ANomAcc} ; + UttAP ap = {s = ap.s ! AF Masc Sg Indef ANomAcc} ; + UttCard n = {s = n.sp ! Masc} ; NoPConj = {s = []} ; PConjConj conj = {s = conj.s2} ; diff --git a/src/scandinavian/PhraseScand.gf b/src/scandinavian/PhraseScand.gf index abcf0750c..98c4bee9f 100644 --- a/src/scandinavian/PhraseScand.gf +++ b/src/scandinavian/PhraseScand.gf @@ -15,6 +15,9 @@ incomplete concrete PhraseScand of Phrase = UttNP np = {s = np.s ! accusative} ; UttVP vp = {s = infMark ++ infVP vp (agrP3 Utr Sg)} ; UttAdv adv = adv ; + UttCN n = {s = n.s ! Sg ! DIndef ! Nom} ; + UttAP n = {s = n.s ! Strong (GSg Utr)} ; + UttCard n = {s = n.s ! neutrum} ; NoPConj = {s = []} ; PConjConj conj = {s = conj.s2} ; diff --git a/src/swedish/StructuralSwe.gf b/src/swedish/StructuralSwe.gf index 23f83e1d1..27e15d00d 100644 --- a/src/swedish/StructuralSwe.gf +++ b/src/swedish/StructuralSwe.gf @@ -43,6 +43,7 @@ concrete StructuralSwe of Structural = CatSwe ** here7to_Adv = ss "hit" ; here7from_Adv = ss "härifrån" ; how_IAdv = ss "hur" ; + how8much_IAdv = ss "hur mycket" ; how8many_IDet = {s = \\_ => ["hur många"] ; n = Pl ; det = DDef Indef} ; if_Subj = ss "om" ; in8front_Prep = ss "framför" ;