Files
gf-core/examples/dialogue/DialogueProlog.gf
2006-05-16 21:10:47 +00:00

35 lines
729 B
Plaintext

--# -path=.:prelude
concrete DialogueProlog of Dialogue = open ResProlog, Prelude in {
flags lexer=codelit ; unlexer=code ;
lincat
Move = SS ;
Action = SS ;
Kind = SS ;
Object = SS ;
Oper0 = SS ;
Oper1 = {s, x : Str} ;
Oper2 = {s, x, y : Str} ;
lin
MRequest a = a ;
MAnswer a = a ; --- ??
MQuery k = ss (bracket (app1 "query" k.s)) ; ---
AOper0 op = ss (bracket (request op.s)) ;
AOper1 _ op x = ss (req_ans op.s op.x x.s) ;
AOper2 _ _ op x y =
ss (bracket (request op.s ++ "," ++
answer (app1 op.x x.s) ++ "," ++ answer (app1 op.y y.s))) ;
OAll = apps "all" ;
OIndef = apps "indef" ;
ODef = apps "def" ;
}