Files
gf-core/lib/dialogue/DialogueI.gf
2005-05-30 15:22:42 +00:00

43 lines
1.4 KiB
Plaintext

incomplete concrete DialogueI of Dialogue = open Prelude, Resource, Basic, DialogueParam in {
lincat
Phrase = {s : Str} ;
Sentence = {s : PhraseForm => Str} ;
Command = {s : Str} ;
NP = NP ; V = V ; V2 = V2 ; VV = VV ; A = A ; PP = PP ; IP = IP ;
lin
PhrasePos s = ss (s.s ! PPos) ;
PhraseNeg s = ss (s.s ! PNeg) ;
PhraseQuest s = ss (s.s ! PQuest) ;
SentV v np = mkPhrase (SPredV np v) ;
SentV2 v np obj = mkPhrase (SPredV2 np v obj) ;
SentA v np = mkPhrase (SPredAP np (UseA v)) ;
SentPP pp np = mkPhrase (SPredAdv np (AdvPP pp)) ;
ModSentV m v np = mkPhrase (SPredVV np m (IPredV ASimul v)) ;
ModSentV2 m v np obj = mkPhrase (SPredVV np m (IPredV2 ASimul v obj)) ;
CommV v = ImperOne (PosImpVP (IPredV ASimul v)) ;
CommV2 v obj = ImperOne (PosImpVP (IPredV2 ASimul v obj)) ;
WhQuestV v ip = mkQuestion (QPredV ip v) ;
WhQuestSubjV2 v ip np = mkQuestion (QPredV2 ip v np) ;
WhQuestObjV2 v np ip = mkQuestion (IntSlash ip (SlashV2 np v)) ;
WhQuestA v ip = mkQuestion (QPredAP ip (UseA v)) ;
WhQuestPP pp ip = mkQuestion (QPredAdv ip (AdvPP pp)) ;
-- test
testNP = she_NP ; testV = walk_V ; testV2 = love_V2 ; testVV =
want_VV ;
--- testA = PositADeg blue_A ;
testPP = PrepNP in_Prep (DefOneNP (UseN city_N)) ;
testIP = who8one_IP ;
}