setup for official Poly/ML 5.3.0, which is now the default;
authorwenzelm
Mon, 09 Nov 2009 21:30:54 +0100
changeset 33538 edf497b5b5d2
parent 33537 06c87d2c5b5a
child 33539 c40865233d7e
setup for official Poly/ML 5.3.0, which is now the default;
etc/settings
src/Pure/IsaMakefile
src/Pure/ML-Systems/compiler_polyml-5.3.ML
src/Pure/ML-Systems/install_pp_polyml-5.3.ML
src/Pure/ML-Systems/polyml-5.2.1.ML
src/Pure/ML-Systems/polyml-5.2.ML
src/Pure/ML-Systems/polyml-experimental.ML
src/Pure/ML-Systems/polyml.ML
src/Pure/ML/ml_compiler_polyml-5.3.ML
src/Pure/ROOT.ML
src/Pure/pure_setup.ML
--- a/etc/settings	Mon Nov 09 20:47:39 2009 +0100
+++ b/etc/settings	Mon Nov 09 21:30:54 2009 +0100
@@ -29,23 +29,18 @@
 ML_OPTIONS="-H 200"
 ML_SOURCES="$ML_HOME/../src"
 
-# Poly/ML 5.2.1
+# Poly/ML 5.3.0
 #ML_PLATFORM=x86-linux
 #ML_HOME=/usr/local/polyml/x86-linux
-#ML_SYSTEM=polyml-5.2.1
+#ML_SYSTEM=polyml-5.3.0
 #ML_OPTIONS="-H 500"
+#ML_SOURCES="$ML_HOME/../src"
 
-# Poly/ML 5.2.1 (64 bit)
+# Poly/ML 5.3.0 (64 bit)
 #ML_PLATFORM=x86_64-linux
 #ML_HOME=/usr/local/polyml/x86_64-linux
-#ML_SYSTEM=polyml-5.2.1
+#ML_SYSTEM=polyml-5.3.0
 #ML_OPTIONS="-H 1000"
-
-# Poly/ML 5.3 (experimental)
-#ML_PLATFORM=x86-linux
-#ML_HOME=/usr/local/polyml/x86-linux
-#ML_SYSTEM=polyml-experimental
-#ML_OPTIONS="-H 500"
 #ML_SOURCES="$ML_HOME/../src"
 
 # Standard ML of New Jersey (slow!)
--- a/src/Pure/IsaMakefile	Mon Nov 09 20:47:39 2009 +0100
+++ b/src/Pure/IsaMakefile	Mon Nov 09 21:30:54 2009 +0100
@@ -27,9 +27,10 @@
   ML-Systems/ml_pretty.ML ML-Systems/mosml.ML				\
   ML-Systems/multithreading.ML ML-Systems/multithreading_polyml.ML	\
   ML-Systems/overloading_smlnj.ML ML-Systems/polyml-5.0.ML		\
-  ML-Systems/polyml-5.1.ML ML-Systems/polyml-experimental.ML		\
-  ML-Systems/polyml.ML ML-Systems/polyml_common.ML			\
-  ML-Systems/pp_polyml.ML ML-Systems/proper_int.ML ML-Systems/smlnj.ML	\
+  ML-Systems/polyml-5.1.ML ML-Systems/polyml-5.2.ML			\
+  ML-Systems/polyml-5.2.1.ML ML-Systems/polyml.ML			\
+  ML-Systems/polyml_common.ML ML-Systems/pp_polyml.ML			\
+  ML-Systems/proper_int.ML ML-Systems/smlnj.ML				\
   ML-Systems/system_shell.ML ML-Systems/thread_dummy.ML			\
   ML-Systems/timing.ML ML-Systems/time_limit.ML				\
   ML-Systems/universal.ML ML-Systems/unsynchronized.ML
--- a/src/Pure/ML-Systems/compiler_polyml-5.3.ML	Mon Nov 09 20:47:39 2009 +0100
+++ b/src/Pure/ML-Systems/compiler_polyml-5.3.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -1,6 +1,6 @@
 (*  Title:      Pure/ML-Systems/compiler_polyml-5.3.ML
 
-Runtime compilation for Poly/ML 5.3.
+Runtime compilation for Poly/ML 5.3.0.
 *)
 
 local
--- a/src/Pure/ML-Systems/install_pp_polyml-5.3.ML	Mon Nov 09 20:47:39 2009 +0100
+++ b/src/Pure/ML-Systems/install_pp_polyml-5.3.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -1,6 +1,6 @@
 (*  Title:      Pure/ML-Systems/install_pp_polyml-5.3.ML
 
-Extra toplevel pretty-printing for Poly/ML 5.3.
+Extra toplevel pretty-printing for Poly/ML 5.3.0.
 *)
 
 PolyML.addPrettyPrinter (fn depth => fn pretty => fn x =>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/Pure/ML-Systems/polyml-5.2.1.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -0,0 +1,28 @@
+(*  Title:      Pure/ML-Systems/polyml-5.2.1.ML
+
+Compatibility wrapper for Poly/ML 5.2.1.
+*)
+
+use "ML-Systems/unsynchronized.ML";
+
+open Thread;
+
+structure ML_Name_Space =
+struct
+  open PolyML.NameSpace;
+  type T = PolyML.NameSpace.nameSpace;
+  val global = PolyML.globalNameSpace;
+end;
+
+fun reraise exn = raise exn;
+
+use "ML-Systems/polyml_common.ML";
+use "ML-Systems/multithreading_polyml.ML";
+
+val pointer_eq = PolyML.pointerEq;
+
+fun share_common_data () = PolyML.shareCommonData PolyML.rootFunction;
+
+use "ML-Systems/compiler_polyml-5.2.ML";
+use "ML-Systems/pp_polyml.ML";
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/Pure/ML-Systems/polyml-5.2.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -0,0 +1,30 @@
+(*  Title:      Pure/ML-Systems/polyml-5.2.ML
+
+Compatibility wrapper for Poly/ML 5.2.
+*)
+
+use "ML-Systems/unsynchronized.ML";
+
+open Thread;
+
+structure ML_Name_Space =
+struct
+  open PolyML.NameSpace;
+  type T = PolyML.NameSpace.nameSpace;
+  val global = PolyML.globalNameSpace;
+end;
+
+fun reraise exn = raise exn;
+
+use "ML-Systems/polyml_common.ML";
+
+use "ML-Systems/thread_dummy.ML";
+use "ML-Systems/multithreading.ML";
+
+val pointer_eq = PolyML.pointerEq;
+
+fun share_common_data () = PolyML.shareCommonData PolyML.rootFunction;
+
+use "ML-Systems/compiler_polyml-5.2.ML";
+use "ML-Systems/pp_polyml.ML";
+
--- a/src/Pure/ML-Systems/polyml-experimental.ML	Mon Nov 09 20:47:39 2009 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-(*  Title:      Pure/ML-Systems/polyml-experimental.ML
-
-Compatibility wrapper for Poly/ML 5.3.
-*)
-
-use "ML-Systems/unsynchronized.ML";
-
-open Thread;
-
-structure ML_Name_Space =
-struct
-  open PolyML.NameSpace;
-  type T = PolyML.NameSpace.nameSpace;
-  val global = PolyML.globalNameSpace;
-end;
-
-fun reraise exn =
-  (case PolyML.exceptionLocation exn of
-    NONE => raise exn
-  | SOME location => PolyML.raiseWithLocation (exn, location));
-
-use "ML-Systems/polyml_common.ML";
-use "ML-Systems/multithreading_polyml.ML";
-
-val pointer_eq = PolyML.pointerEq;
-
-fun share_common_data () = PolyML.shareCommonData PolyML.rootFunction;
-
-use "ML-Systems/compiler_polyml-5.3.ML";
-PolyML.Compiler.reportUnreferencedIds := true;
-
-
-(* toplevel pretty printing *)
-
-val pretty_ml =
-  let
-    fun convert len (PolyML.PrettyBlock (ind, _, context, prts)) =
-          let
-            fun property name default =
-              (case List.find (fn PolyML.ContextProperty (a, _) => name = a | _ => false) context of
-                SOME (PolyML.ContextProperty (_, b)) => b
-              | NONE => default);
-            val bg = property "begin" "";
-            val en = property "end" "";
-            val len' = property "length" len;
-          in ML_Pretty.Block ((bg, en), map (convert len') prts, ind) end
-      | convert len (PolyML.PrettyString s) =
-          ML_Pretty.String (s, case Int.fromString len of SOME i => i | NONE => size s)
-      | convert _ (PolyML.PrettyBreak (wd, _)) =
-          ML_Pretty.Break (if wd < 99999 then (false, wd) else (true, 2));
-  in convert "" end;
-
-fun ml_pretty (ML_Pretty.Block ((bg, en), prts, ind)) =
-      let val context =
-        (if bg = "" then [] else [PolyML.ContextProperty ("begin", bg)]) @
-        (if en = "" then [] else [PolyML.ContextProperty ("end", en)])
-      in PolyML.PrettyBlock (ind, false, context, map ml_pretty prts) end
-  | ml_pretty (ML_Pretty.String (s, len)) =
-      if len = size s then PolyML.PrettyString s
-      else PolyML.PrettyBlock
-        (0, false, [PolyML.ContextProperty ("length", Int.toString len)], [PolyML.PrettyString s])
-  | ml_pretty (ML_Pretty.Break (false, wd)) = PolyML.PrettyBreak (wd, 0)
-  | ml_pretty (ML_Pretty.Break (true, _)) = PolyML.PrettyBreak (99999, 0);
-
-fun toplevel_pp context (_: string list) pp =
-  use_text context (1, "pp") false
-    ("PolyML.addPrettyPrinter (fn _ => fn _ => ml_pretty o Pretty.to_ML o (" ^ pp ^ "))");
-
--- a/src/Pure/ML-Systems/polyml.ML	Mon Nov 09 20:47:39 2009 +0100
+++ b/src/Pure/ML-Systems/polyml.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -1,6 +1,6 @@
 (*  Title:      Pure/ML-Systems/polyml.ML
 
-Compatibility wrapper for Poly/ML 5.2 and 5.2.1.
+Compatibility wrapper for Poly/ML 5.3.0.
 *)
 
 use "ML-Systems/unsynchronized.ML";
@@ -14,18 +14,55 @@
   val global = PolyML.globalNameSpace;
 end;
 
-fun reraise exn = raise exn;
+fun reraise exn =
+  (case PolyML.exceptionLocation exn of
+    NONE => raise exn
+  | SOME location => PolyML.raiseWithLocation (exn, location));
 
 use "ML-Systems/polyml_common.ML";
-
-if ml_system = "polyml-5.2"
-then (use "ML-Systems/thread_dummy.ML"; use "ML-Systems/multithreading.ML")
-else use "ML-Systems/multithreading_polyml.ML";
+use "ML-Systems/multithreading_polyml.ML";
 
 val pointer_eq = PolyML.pointerEq;
 
 fun share_common_data () = PolyML.shareCommonData PolyML.rootFunction;
 
-use "ML-Systems/compiler_polyml-5.2.ML";
-use "ML-Systems/pp_polyml.ML";
+use "ML-Systems/compiler_polyml-5.3.ML";
+PolyML.Compiler.reportUnreferencedIds := true;
+
+
+(* toplevel pretty printing *)
 
+val pretty_ml =
+  let
+    fun convert len (PolyML.PrettyBlock (ind, _, context, prts)) =
+          let
+            fun property name default =
+              (case List.find (fn PolyML.ContextProperty (a, _) => name = a | _ => false) context of
+                SOME (PolyML.ContextProperty (_, b)) => b
+              | NONE => default);
+            val bg = property "begin" "";
+            val en = property "end" "";
+            val len' = property "length" len;
+          in ML_Pretty.Block ((bg, en), map (convert len') prts, ind) end
+      | convert len (PolyML.PrettyString s) =
+          ML_Pretty.String (s, case Int.fromString len of SOME i => i | NONE => size s)
+      | convert _ (PolyML.PrettyBreak (wd, _)) =
+          ML_Pretty.Break (if wd < 99999 then (false, wd) else (true, 2));
+  in convert "" end;
+
+fun ml_pretty (ML_Pretty.Block ((bg, en), prts, ind)) =
+      let val context =
+        (if bg = "" then [] else [PolyML.ContextProperty ("begin", bg)]) @
+        (if en = "" then [] else [PolyML.ContextProperty ("end", en)])
+      in PolyML.PrettyBlock (ind, false, context, map ml_pretty prts) end
+  | ml_pretty (ML_Pretty.String (s, len)) =
+      if len = size s then PolyML.PrettyString s
+      else PolyML.PrettyBlock
+        (0, false, [PolyML.ContextProperty ("length", Int.toString len)], [PolyML.PrettyString s])
+  | ml_pretty (ML_Pretty.Break (false, wd)) = PolyML.PrettyBreak (wd, 0)
+  | ml_pretty (ML_Pretty.Break (true, _)) = PolyML.PrettyBreak (99999, 0);
+
+fun toplevel_pp context (_: string list) pp =
+  use_text context (1, "pp") false
+    ("PolyML.addPrettyPrinter (fn _ => fn _ => ml_pretty o Pretty.to_ML o (" ^ pp ^ "))");
+
--- a/src/Pure/ML/ml_compiler_polyml-5.3.ML	Mon Nov 09 20:47:39 2009 +0100
+++ b/src/Pure/ML/ml_compiler_polyml-5.3.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -1,7 +1,7 @@
 (*  Title:      Pure/ML/ml_compiler_polyml-5.3.ML
     Author:     Makarius
 
-Advanced runtime compilation for Poly/ML 5.3 (SVN 839).
+Advanced runtime compilation for Poly/ML 5.3.0.
 *)
 
 signature ML_COMPILER =
--- a/src/Pure/ROOT.ML	Mon Nov 09 20:47:39 2009 +0100
+++ b/src/Pure/ROOT.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -169,7 +169,7 @@
 use "ML/ml_syntax.ML";
 use "ML/ml_env.ML";
 use "Isar/runtime.ML";
-if ml_system = "polyml-experimental"
+if ml_system = "polyml-5.3.0"
 then use "ML/ml_compiler_polyml-5.3.ML"
 else use "ML/ml_compiler.ML";
 use "ML/ml_context.ML";
--- a/src/Pure/pure_setup.ML	Mon Nov 09 20:47:39 2009 +0100
+++ b/src/Pure/pure_setup.ML	Mon Nov 09 21:30:54 2009 +0100
@@ -33,7 +33,7 @@
 toplevel_pp ["Path", "T"] "Pretty.str o quote o Path.implode";
 toplevel_pp ["File", "ident"] "Pretty.str o quote o File.rep_ident";
 
-if ml_system = "polyml-experimental"
+if ml_system = "polyml-5.3.0"
 then use "ML-Systems/install_pp_polyml-5.3.ML"
 else if String.isPrefix "polyml" ml_system
 then use "ML-Systems/install_pp_polyml.ML"