mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-26 03:08:55 -06:00
pro drops and 'how AP' in Extra for some languages
This commit is contained in:
@@ -36,4 +36,11 @@ abstract Extra = Cat ** {
|
|||||||
ConjVPS : Conj -> [VPS] -> VPS ;
|
ConjVPS : Conj -> [VPS] -> VPS ;
|
||||||
PredVPS : NP -> VPS -> S ;
|
PredVPS : NP -> VPS -> S ;
|
||||||
|
|
||||||
|
-- 9/4/2010
|
||||||
|
|
||||||
|
fun
|
||||||
|
ProDrop : Pron -> Pron ; -- unstressed subject pronoun becomes []: "(io) sono stanco"
|
||||||
|
ICompAP : AP -> IComp ; -- "how old"
|
||||||
|
IAdvAdv : Adv -> IAdv ; -- "how often"
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -443,6 +443,10 @@ incomplete resource Constructors = open Grammar in {
|
|||||||
|
|
||||||
-- There are definite and indefinite articles.
|
-- There are definite and indefinite articles.
|
||||||
|
|
||||||
|
mkQuant : overload { --# notminimal
|
||||||
|
mkQuant : Pron -> Quant ; -- 1. my --# notminimal
|
||||||
|
} ; --# notminimal
|
||||||
|
|
||||||
the_Quant : Quant ; -- the --# notminimal
|
the_Quant : Quant ; -- the --# notminimal
|
||||||
a_Quant : Quant ; -- a --# notminimal
|
a_Quant : Quant ; -- a --# notminimal
|
||||||
|
|
||||||
@@ -1125,6 +1129,10 @@ incomplete resource Constructors = open Grammar in {
|
|||||||
= \p -> DetQuant (PossPron p) ; --# notminimal
|
= \p -> DetQuant (PossPron p) ; --# notminimal
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
mkQuant = overload { --# notminimal
|
||||||
|
mkQuant : Pron -> Quant = PossPron ; -- 1. my --# notminimal
|
||||||
|
} ; --# notminimal
|
||||||
|
|
||||||
|
|
||||||
the_Art : Art = DefArt ; -- the
|
the_Art : Art = DefArt ; -- the
|
||||||
a_Art : Art = IndefArt ; -- a
|
a_Art : Art = IndefArt ; -- a
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
--# -path=.:alltenses:prelude
|
--# -path=.:alltenses:prelude
|
||||||
|
|
||||||
resource TryEng = SyntaxEng-[mkAdN], LexiconEng, ParadigmsEng - [mkAdv,mkAdN,mkOrd] **
|
resource TryEng = SyntaxEng-[mkAdN], LexiconEng, ParadigmsEng - [mkAdv,mkAdN,mkOrd,mkQuant] **
|
||||||
open (P = ParadigmsEng) in {
|
open (P = ParadigmsEng) in {
|
||||||
|
|
||||||
oper
|
oper
|
||||||
|
|||||||
@@ -76,4 +76,5 @@ instance DiffDan of DiffScand = open CommonScand, Prelude in {
|
|||||||
<_, P3> => "sig"
|
<_, P3> => "sig"
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
hur_IAdv = {s = "hvor"} ;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -93,4 +93,8 @@ concrete ExtraEng of ExtraEngAbs = CatEng **
|
|||||||
|
|
||||||
ConjVPS = conjunctDistrTable Agr ;
|
ConjVPS = conjunctDistrTable Agr ;
|
||||||
|
|
||||||
|
ICompAP ap = {s = "how" ++ ap.s ! agrP3 Sg} ; ---- IComp should have agr!
|
||||||
|
|
||||||
|
IAdvAdv adv = {s = "how" ++ adv.s} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
abstract ExtraEngAbs = Extra ** {
|
abstract ExtraEngAbs = Extra - [ProDrop] ** {
|
||||||
|
|
||||||
-- uncontracted negations; contracted are the default
|
-- uncontracted negations; contracted are the default
|
||||||
fun
|
fun
|
||||||
|
|||||||
@@ -75,4 +75,18 @@ concrete ExtraFin of ExtraFinAbs = CatFin **
|
|||||||
s = \\agr => ap.s ! False ! NCase (complNumAgr agr) Part
|
s = \\agr => ap.s ! False ! NCase (complNumAgr agr) Part
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
---- copied from VerbFin.CompAP, should be shared
|
||||||
|
ICompAP ap = {
|
||||||
|
s = \\agr =>
|
||||||
|
let
|
||||||
|
n = complNumAgr agr ;
|
||||||
|
c = case n of {
|
||||||
|
Sg => Nom ; -- minä olen iso ; te olette iso
|
||||||
|
Pl => Part -- me olemme isoja ; te olette isoja
|
||||||
|
} --- definiteness of NP ?
|
||||||
|
in "kuinka" ++ ap.s ! False ! (NCase n c)
|
||||||
|
} ;
|
||||||
|
|
||||||
|
IAdvAdv adv = {s = "kuinka" ++ adv.s} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
abstract ExtraFinAbs = Extra [
|
abstract ExtraFinAbs = Extra [
|
||||||
GenNP,VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
|
GenNP,VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
|
||||||
VV,VP,Conj,NP,Quant] ** {
|
VV,VP,Conj,NP,Quant,IAdv,IComp,ICompAP,IAdvAdv,Adv,AP] ** {
|
||||||
|
|
||||||
fun
|
fun
|
||||||
AdvExistNP : Adv -> NP -> Cl ; -- kuvassa olemme me
|
AdvExistNP : Adv -> NP -> Cl ; -- kuvassa olemme me
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
-- Structures special for French. These are not implemented in other
|
-- Structures special for French. These are not implemented in other
|
||||||
-- Romance languages.
|
-- Romance languages.
|
||||||
|
|
||||||
abstract ExtraFreAbs = ExtraRomanceAbs ** {
|
abstract ExtraFreAbs = ExtraRomanceAbs - [ProDrop] ** {
|
||||||
|
|
||||||
-- Notice: only direct (main-clause) questions are generated, and needed.
|
-- Notice: only direct (main-clause) questions are generated, and needed.
|
||||||
|
|
||||||
|
|||||||
@@ -31,4 +31,8 @@ concrete ExtraGer of ExtraGerAbs = CatGer **
|
|||||||
|
|
||||||
moegen_VV = auxVV mögen_V ;
|
moegen_VV = auxVV mögen_V ;
|
||||||
|
|
||||||
|
ICompAP ap = {s = \\_ => "wie" ++ ap.s ! APred} ;
|
||||||
|
|
||||||
|
IAdvAdv adv = {s = "wie" ++ adv.s} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
abstract ExtraGerAbs = Extra [
|
abstract ExtraGerAbs = Extra [
|
||||||
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
|
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
|
||||||
VV,VP,Conj] ** {
|
VV,VP,Conj,IAdv,IComp,ICompAP,IAdvAdv,Adv,AP] ** {
|
||||||
|
|
||||||
fun
|
fun
|
||||||
PPzuAdv : CN -> Adv ; -- zum Lied, zur Flasche
|
PPzuAdv : CN -> Adv ; -- zum Lied, zur Flasche
|
||||||
|
|||||||
@@ -86,4 +86,6 @@ instance DiffNor of DiffScand = open CommonScand, Prelude in {
|
|||||||
<_, P3> => "seg"
|
<_, P3> => "seg"
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
hur_IAdv = {s = "hvor"} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,4 +20,15 @@ incomplete concrete ExtraRomance of ExtraRomanceAbs = CatRomance **
|
|||||||
ComplVPIVV v vpi =
|
ComplVPIVV v vpi =
|
||||||
insertComplement (\\a => prepCase v.c2.c ++ vpi.s) (predV v) ;
|
insertComplement (\\a => prepCase v.c2.c ++ vpi.s) (predV v) ;
|
||||||
|
|
||||||
|
ProDrop p = {
|
||||||
|
s = table {
|
||||||
|
Nom => let pn = p.s ! Nom in {c1 = pn.c1 ; c2 = pn.c2 ; comp = [] ; ton = pn.ton} ;
|
||||||
|
c => p.s ! c
|
||||||
|
} ;
|
||||||
|
a = p.a ;
|
||||||
|
poss = p.poss ;
|
||||||
|
hasClit = p.hasClit ;
|
||||||
|
isPol = p.isPol
|
||||||
|
} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
abstract ExtraRomanceAbs = Cat, Extra[
|
abstract ExtraRomanceAbs = Cat, Extra[
|
||||||
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
|
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
|
||||||
VV,VP,Conj] ** {
|
VV,VP,Conj,Pron,ProDrop] ** {
|
||||||
|
|
||||||
fun
|
fun
|
||||||
TPasseSimple : Tense ; --# notpresent
|
TPasseSimple : Tense ; --# notpresent
|
||||||
|
|||||||
@@ -61,5 +61,7 @@ interface DiffScand = open CommonScand, Prelude in {
|
|||||||
|
|
||||||
reflPron : Agr -> Str ;
|
reflPron : Agr -> Str ;
|
||||||
|
|
||||||
|
hur_IAdv : {s : Str} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -80,4 +80,8 @@ incomplete concrete ExtraScand of ExtraScandAbs = CatScand **
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
ConjVPS = conjunctDistrTable2 Order Agr ;
|
ConjVPS = conjunctDistrTable2 Order Agr ;
|
||||||
|
|
||||||
|
ICompAP ap = {s = \\a => hur_IAdv.s ++ ap.s ! a} ;
|
||||||
|
|
||||||
|
IAdvAdv adv = {s = hur_IAdv.s ++ adv.s} ;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,4 +77,5 @@ instance DiffSwe of DiffScand = open CommonScand, Prelude in {
|
|||||||
<_, P3> => "sig"
|
<_, P3> => "sig"
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
hur_IAdv = {s = "hur"} ;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user