opers in cnc

This commit is contained in:
aarne
2005-12-06 12:39:36 +00:00
parent 6cda8779c4
commit fc0ec0c0cd
7 changed files with 61 additions and 73 deletions

View File

@@ -28,53 +28,4 @@ resource DemRes = open Prelude in {
mkDem t x noPoint ;
{-
mkDemS : Cl -> DemAdverb -> Pointing -> MultiSentence = \cl,adv,p ->
{s = table {
MInd b => msS (UseCl (polar b) (AdvCl cl adv)) ;
MQuest b => msQS (UseQCl (polar b) (QuestCl (AdvCl cl adv)))
} ;
point = p.point ++ adv.point
} ;
polar : Bool -> TP = \b -> case b of {
True => PosTP TPresent ASimul ;
False => NegTP TPresent ASimul
} ;
mkDemQ : QCl -> DemAdverb -> Pointing -> MultiQuestion = \cl,adv,p ->
{s = \\b => msQS (UseQCl (polar b) cl) ++ adv.s ; --- (AdvQCl cl adv)) ;
point = p.s5 ++ adv.s5
} ;
mkDemImp : VCl -> DemAdverb -> Pointing -> MultiImperative = \cl,adv,p ->
{s = table {
True => msImp (PosImpVP cl) ++ adv.s ;
False => msImp (NegImpVP cl) ++ adv.s
} ;
s5 = p.s5 ++ adv.s5
} ;
msS : S -> Str ;
msQS : QS -> Str ;
msImp : Imp -> Str ;
concatDem : (x,y : Pointing) -> Pointing = \x,y -> {
s5 = x.s5 ++ y.s5
} ;
MultiSentence : Type = mkDemType {s : MSForm => Str} ;
MultiQuestion : Type = mkDemType {s : Bool => Str} ;
MultiImperative : Type = mkDemType {s : Bool => Str} ;
Demonstrative : Type = mkDemType NP ;
DemAdverb : Type = mkDemType Adv ;
mkDAdv : Adv -> Pointing -> DemAdverb = \a,p ->
a ** p ** {lock_Adv = a.lock_Adv} ;
param
MSForm = MInd Bool | MQuest Bool ;
-}
}

View File

@@ -6,6 +6,9 @@ abstract Demonstrative = Cat, Tense ** {
MQS ; -- multimodal wh question
MImp ; -- multimodal imperative
MVP ; -- multimodal verb phrase
MComp ; -- multimodal complement to copula (MAP, DNP, DAdv)
MAP ; -- multimodal adjectival phrase
DNP ; -- demonstrative noun phrase
DAdv ; -- demonstrative adverbial
Point ; -- pointing gesture
@@ -31,11 +34,11 @@ abstract Demonstrative = Cat, Tense ** {
DemV2 : V2 -> DNP -> MVP ; -- takes this (here)
DemVV : VV -> MVP -> MVP ; -- wants to fly (here)
DemComp : DComp -> MVP ; -- is here ; is bigger than this
DemComp : MComp -> MVP ; -- is here ; is bigger than this
DCompAP : DAP -> DComp ; -- bigger than this
DCompNP : DNP -> DComp ; -- the price of this
DCompAdv : DAdv -> DComp ; -- here
DCompAP : MAP -> MComp ; -- bigger than this
DCompNP : DNP -> MComp ; -- the price of this
DCompAdv : DAdv -> MComp ; -- here
-- Adverbial modification of a verb phrase.

View File

@@ -7,6 +7,8 @@ incomplete concrete DemonstrativeI of Demonstrative = Cat, TenseX **
MQS = Dem {s : Polarity => Str} ;
MImp = Dem {s : Polarity => Str} ;
MVP = Dem VP ;
MComp = Dem Comp ;
MAP = Dem AP ;
DNP = Dem NP ;
DAdv = Dem Adv ;
Point = DemRes.Point ;
@@ -26,8 +28,11 @@ incomplete concrete DemonstrativeI of Demonstrative = Cat, TenseX **
DemV2 verb obj = mkDem VP (ComplV2 verb obj) obj ;
DemVV vv vp = mkDem VP (ComplVV vv vp) vp ;
DemComp comp = mkDem Comp (UseComp comp) ;
DCompAP
DemComp comp = mkDem VP (UseComp comp) comp ;
--- DemComp = keepDem VP UseComp ;
DCompAP ap = mkDem Comp (CompAP ap) ap ;
DCompAdv adv = mkDem Comp (CompAdv adv) adv ;
AdvMVP vp adv =
@@ -38,7 +43,7 @@ incomplete concrete DemonstrativeI of Demonstrative = Cat, TenseX **
thisDet_DNP cn =
mkDem NP (DetCN (MkDet NoPredet this_Quant NoNum NoOrd) cn) ;
thatDet_DNP p cn = mkDem (DetNP that_Det cn) ;
thatDet_DNP cn =
mkDem NP (DetCN (MkDet NoPredet that_Quant NoNum NoOrd) cn) ;
here_DAdv = mkDem Adv here_Adv ;