proper markup of const syntax;
authorwenzelm
Sun, 21 Feb 2010 20:53:50 +0100
changeset 35250 92664dca6f20
parent 35249 7024a8a8f36a
child 35251 e244adbbc28f
proper markup of const syntax;
src/HOL/Import/hol4rews.ML
src/HOL/Library/OptionalSugar.thy
--- a/src/HOL/Import/hol4rews.ML	Sat Feb 20 23:23:04 2010 +0100
+++ b/src/HOL/Import/hol4rews.ML	Sun Feb 21 20:53:50 2010 +0100
@@ -613,13 +613,13 @@
     end
 
 local
-    fun handle_meta [x as Appl[Appl[Constant "_constrain", Constant "==", _],_,_]] = x
-      | handle_meta [x as Appl[Appl[Constant "_constrain", Constant "all", _],_]] = x
-      | handle_meta [x as Appl[Appl[Constant "_constrain", Constant "==>", _],_,_]] = x
+    fun handle_meta [x as Appl[Appl[Constant "_constrain", Constant @{const_syntax "=="}, _],_,_]] = x
+      | handle_meta [x as Appl[Appl[Constant "_constrain", Constant @{const_syntax all}, _],_]] = x
+      | handle_meta [x as Appl[Appl[Constant "_constrain", Constant @{const_syntax "==>"}, _],_,_]] = x
       | handle_meta [x] = Appl[Constant "Trueprop",x]
       | handle_meta _ = error "hol4rews error: Trueprop not applied to single argument"
 in
-val smarter_trueprop_parsing = [("Trueprop",handle_meta)]
+val smarter_trueprop_parsing = [(@{const_syntax Trueprop},handle_meta)]
 end
 
 local
--- a/src/HOL/Library/OptionalSugar.thy	Sat Feb 20 23:23:04 2010 +0100
+++ b/src/HOL/Library/OptionalSugar.thy	Sun Feb 21 20:53:50 2010 +0100
@@ -37,15 +37,15 @@
 
 (* Let *)
 translations 
-  "_bind (p,DUMMY) e" <= "_bind p (CONST fst e)"
-  "_bind (DUMMY,p) e" <= "_bind p (CONST snd e)"
+  "_bind (p, CONST DUMMY) e" <= "_bind p (CONST fst e)"
+  "_bind (CONST DUMMY, p) e" <= "_bind p (CONST snd e)"
 
   "_tuple_args x (_tuple_args y z)" ==
     "_tuple_args x (_tuple_arg (_tuple y z))"
 
-  "_bind (Some p) e" <= "_bind p (CONST the e)"
-  "_bind (p#DUMMY) e" <= "_bind p (CONST hd e)"
-  "_bind (DUMMY#p) e" <= "_bind p (CONST tl e)"
+  "_bind (CONST Some p) e" <= "_bind p (CONST the e)"
+  "_bind (p # CONST DUMMY) e" <= "_bind p (CONST hd e)"
+  "_bind (CONST DUMMY # p) e" <= "_bind p (CONST tl e)"
 
 (* type constraints with spacing *)
 setup {*