it clefts and let's, implemented for Germanic

This commit is contained in:
aarne
2006-05-31 14:33:10 +00:00
parent 0694e0e1bb
commit afa2261a1b
18 changed files with 135 additions and 47 deletions

View File

@@ -8,7 +8,7 @@ concrete CatEng of Cat = CommonX ** open ResEng, Prelude in {
S = {s : Str} ;
QS = {s : QForm => Str} ;
RS = {s : Agr => Str} ;
RS = {s : Agr => Str ; c : Case} ; -- c for it clefts
-- Sentence
@@ -25,7 +25,7 @@ concrete CatEng of Cat = CommonX ** open ResEng, Prelude in {
-- Relative
RCl = {s : Tense => Anteriority => Polarity => Agr => Str} ;
RCl = {s : Tense => Anteriority => Polarity => Agr => Str ; c : Case} ;
RP = {s : RCase => Str ; a : RAgr} ;
-- Verb

View File

@@ -6,13 +6,25 @@ concrete IdiomEng of Idiom = CatEng ** open Prelude, ResEng in {
ImpersCl vp = mkClause "it" (agrP3 Sg) vp ;
GenericCl vp = mkClause "one" (agrP3 Sg) vp ;
CleftNP np rs = mkClause "it" (agrP3 Sg)
(insertObj (\\_ => rs.s ! np.a)
(insertObj (\\_ => np.s ! rs.c) (predAux auxBe))) ;
CleftAdv ad s = mkClause "it" (agrP3 Sg)
(insertObj (\\_ => conjThat ++ s.s)
(insertObj (\\_ => ad.s) (predAux auxBe))) ;
ExistNP np =
mkClause "there" (agrP3 np.a.n) (insertObj (\\_ => np.s ! Acc) (predAux auxBe)) ;
mkClause "there" (agrP3 np.a.n)
(insertObj (\\_ => np.s ! Acc) (predAux auxBe)) ;
ExistIP ip =
mkQuestion (ss (ip.s ! Nom)) (mkClause "there" (agrP3 ip.n) (predAux auxBe)) ;
mkQuestion (ss (ip.s ! Nom))
(mkClause "there" (agrP3 ip.n) (predAux auxBe)) ;
ProgrVP vp = insertObj (\\a => vp.ad ++ vp.prp ++ vp.s2 ! a) (predAux auxBe) ;
ImpPl1 vp = {s = "let's" ++ infVP True vp {n = Pl ; p = P1}} ;
}

View File

@@ -5,7 +5,8 @@ concrete RelativeEng of Relative = CatEng ** open ResEng in {
lin
RelCl cl = {
s = \\t,a,p,_ => "such" ++ "that" ++ cl.s ! t ! a ! p ! ODir
s = \\t,a,p,_ => "such" ++ "that" ++ cl.s ! t ! a ! p ! ODir ;
c = Nom
} ;
RelVP rp vp = {
@@ -17,14 +18,16 @@ concrete RelativeEng of Relative = CatEng ** open ResEng in {
} ;
cl = mkClause (rp.s ! RC Nom) agr vp
in
cl.s ! t ! ant ! b ! ODir
cl.s ! t ! ant ! b ! ODir ;
c = Nom
} ;
-- Preposition stranding: "that we are looking at". Pied-piping is
-- deferred to $ExtEng.gf$ ("at which we are looking").
RelSlash rp slash = {
s = \\t,a,p,_ => rp.s ! RC Acc ++ slash.s ! t ! a ! p ! ODir ++ slash.c2
s = \\t,a,p,_ => rp.s ! RC Acc ++ slash.s ! t ! a ! p ! ODir ++ slash.c2 ;
c = Acc
} ;
FunRP p np rp = {

View File

@@ -42,6 +42,9 @@ concrete SentenceEng of Sentence = CatEng ** open Prelude, ResEng in {
UseCl t a p cl = {s = t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! ODir} ;
UseQCl t a p cl = {s = \\q => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! q} ;
UseRCl t a p cl = {s = \\r => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! r} ;
UseRCl t a p cl = {
s = \\r => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! r ;
c = cl.c
} ;
}