mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-20 16:42:51 -06:00
nominalization in Extra Dut and Eng (from Ramona)
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
concrete ExtraDut of ExtraDutAbs = CatDut **
|
||||
open ResDut, Coordination, Prelude, IrregDut in
|
||||
open ResDut, MorphoDut, Coordination, Prelude, IrregDut in
|
||||
{
|
||||
--{
|
||||
--
|
||||
@@ -113,4 +113,14 @@ lin
|
||||
|
||||
ConjVPS = conjunctDistrTable2 Order Agr ;
|
||||
|
||||
lin
|
||||
NominalizeVPSlashNP vpslash np =
|
||||
let vp : ResDut.VP = insertObjNP np.isPron (\\_ => appPrep vpslash.c2 np.s) vpslash ;
|
||||
agrDef : Agr = agrP3 Sg ;
|
||||
compl : Str = vp.n0 ! agrDef ++ vp.a1 ! Pos ++ vp.n2 ! agrDef ++ vp.s.prefix ;
|
||||
inf : Str = vp.inf.p1 ;
|
||||
extra : Str = vp.ext
|
||||
in
|
||||
lin NP (MorphoDut.mkNP (vp.s.s ! VInf ++ "van" ++ compl ++ inf ++ extra ) Utr Sg) ;
|
||||
|
||||
}
|
||||
|
||||
@@ -2,8 +2,10 @@ abstract ExtraDutAbs = Extra [
|
||||
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
|
||||
VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS,
|
||||
Temp,Pol,S,NP,
|
||||
VV,VP,Conj,IComp,ICompAP,IAdvAdv,Adv,AP,IAdv] **
|
||||
VV,VP,Conj,IComp,ICompAP,IAdvAdv,Adv,AP,IAdv,
|
||||
VPSlash, NominalizeVPSlashNP] **
|
||||
{
|
||||
|
||||
--{
|
||||
--
|
||||
-- fun
|
||||
@@ -14,4 +16,6 @@ abstract ExtraDutAbs = Extra [
|
||||
--
|
||||
--}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -40,7 +40,8 @@ oper
|
||||
de : Gender ; -- non-neutrum
|
||||
het : Gender ; -- neutrum
|
||||
|
||||
|
||||
nominative : Case ; -- nominative of nouns
|
||||
genitive : Case ; -- genitive of nouns
|
||||
|
||||
--2 Nouns
|
||||
|
||||
@@ -48,6 +49,8 @@ oper
|
||||
mkN : (muis : Str) -> N ; -- de muis-muisen, with some predictable exceptions
|
||||
mkN : (bit : Str) -> Gender -> N ; -- if gender is not predictable
|
||||
mkN : (gat,gaten : Str) -> Gender -> N ; -- worst-case for nouns
|
||||
mkN : (huis, boot : N) -> N ; -- compound huisboot
|
||||
mkN : (station, hal : N) -> Case -> N ; -- compound stationshal
|
||||
} ;
|
||||
|
||||
-- Relational nouns need a preposition. The most common is "van".
|
||||
@@ -195,6 +198,10 @@ oper
|
||||
= \a,b -> lin N (regNounG a b) ;
|
||||
mkN : (gat,gaten : Str) -> Gender -> N
|
||||
= \a,b,c -> lin N (mkNoun a b c) ;
|
||||
mkN : (huis,boot : N) -> N
|
||||
= \huis,boot -> lin N {s = \\n => huis.s ! NF Sg Nom + boot.s ! n ; g = boot.g} ;
|
||||
mkN : (huis,boot : N) -> Case -> N
|
||||
= \huis,boot,c -> lin N {s = \\n => huis.s ! NF Sg c + boot.s ! n ; g = boot.g} ;
|
||||
} ;
|
||||
|
||||
mkN2 = overload {
|
||||
@@ -213,6 +220,8 @@ oper
|
||||
feminine = Utr ;
|
||||
het,neuter = Neutr ;
|
||||
de,utrum = Utr ;
|
||||
nominative = Nom ;
|
||||
genitive = Gen ;
|
||||
|
||||
mkA = overload {
|
||||
mkA : (vers : Str) -> A = \a -> lin A (regAdjective a) ;
|
||||
|
||||
Reference in New Issue
Block a user