summaryrefslogtreecommitdiff
path: root/grammars/video/Shared/general.Prolog.gf
diff options
context:
space:
mode:
authoraarne <unknown>2004-09-16 14:47:18 +0000
committeraarne <unknown>2004-09-16 14:47:18 +0000
commitecc132dccfc7617ed413f21ee37539475081f8ec (patch)
treef6fe589eb3881e36b9a94d36aaba49fe4d4087e4 /grammars/video/Shared/general.Prolog.gf
parent7769d0fb00a34fb4499017a4aec01a59246b69a1 (diff)
Karin C's example
Diffstat (limited to 'grammars/video/Shared/general.Prolog.gf')
-rw-r--r--grammars/video/Shared/general.Prolog.gf50
1 files changed, 50 insertions, 0 deletions
diff --git a/grammars/video/Shared/general.Prolog.gf b/grammars/video/Shared/general.Prolog.gf
new file mode 100644
index 000000000..322c805b4
--- /dev/null
+++ b/grammars/video/Shared/general.Prolog.gf
@@ -0,0 +1,50 @@
+-- File name Shared/general.Prolog.gf
+include
+ general.Abs.gf ;
+
+flags lexer=codelit ; unlexer=codelit ; startcat=DMoveList ;
+
+
+oper
+app : Str -> Str -> Str =
+ \pred -> \arg ->
+ pred ++ "(" ++ arg ++ ")" ;
+appHakeOne : Str -> Str =
+ \arg ->
+ "["++ arg ++ "]" ;
+
+
+lin
+dmoves dm = {s = appHakeOne dm.s };
+dmoves1 dm = {s = dm.s };
+dmoves2 dm dms = {s = dm.s ++ "," ++ dms.s };
+
+lin
+answer p = {s = app "answer" p.s};
+--request a = {s = app "request" a.s };
+
+--- Answers
+propans a = {s = a.s} ;
+negpropans a = {s = app "not" a.s} ;
+shortans a = {s = a.s} ;
+negShortAns a = {s = a.s} ;
+
+negprop n p = {s = n.s ++ p.s} ;
+
+pattern
+neg = [] ;
+
+pattern
+----Short answers
+yes = "yes" ;
+no = "no";
+english = "english" ; ----???
+swedish = "swedish" ; ----???
+
+lin
+indShortAns a = {s = a.s} ;
+not n = {s = n.s} ;
+
+--avsluta??
+--börja om
+top = { s = "top"} ;