discontinued Output.debug, which belongs to early PGIP experiments (b6788dbd2ef9) and causes just too many problems (like spamming the message channel if it is used by more than one module);
authorwenzelm
Fri, 17 Sep 2010 22:17:57 +0200
changeset 39513 fce2202892c4
parent 39512 31290f54be19
child 39514 d9cf3f833318
discontinued Output.debug, which belongs to early PGIP experiments (b6788dbd2ef9) and causes just too many problems (like spamming the message channel if it is used by more than one module);
NEWS
src/Pure/General/markup.scala
src/Pure/Isar/runtime.ML
src/Pure/Isar/toplevel.ML
src/Pure/ProofGeneral/proof_general_emacs.ML
src/Pure/ProofGeneral/proof_general_pgip.ML
src/Pure/System/isabelle_process.ML
src/Pure/System/isabelle_process.scala
src/Tools/jEdit/dist-template/etc/isabelle-jedit.css
src/Tools/jEdit/src/jedit/output_dockable.scala
--- a/NEWS	Fri Sep 17 21:50:44 2010 +0200
+++ b/NEWS	Fri Sep 17 22:17:57 2010 +0200
@@ -244,6 +244,9 @@
 
 *** ML ***
 
+* Discontinued Output.debug.  Minor INCOMPATIBILITY, use plain writeln
+instead (or tracing for high-volume output).
+
 * Configuration option show_question_marks only affects regular pretty
 printing of types and terms, not raw Term.string_of_vname.
 
--- a/src/Pure/General/markup.scala	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Pure/General/markup.scala	Fri Sep 17 22:17:57 2010 +0200
@@ -239,7 +239,6 @@
   val TRACING = "tracing"
   val WARNING = "warning"
   val ERROR = "error"
-  val DEBUG = "debug"
   val SYSTEM = "system"
   val INPUT = "input"
   val STDIN = "stdin"
--- a/src/Pure/Isar/runtime.ML	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Pure/Isar/runtime.ML	Fri Sep 17 22:17:57 2010 +0200
@@ -10,6 +10,7 @@
   exception TERMINATE
   exception EXCURSION_FAIL of exn * string
   exception TOPLEVEL_ERROR
+  val debug: bool Unsynchronized.ref
   val exn_context: Proof.context option -> exn -> exn
   val exn_messages: (exn -> Position.T) -> exn -> string list
   val exn_message: (exn -> Position.T) -> exn -> string
@@ -28,6 +29,8 @@
 exception EXCURSION_FAIL of exn * string;
 exception TOPLEVEL_ERROR;
 
+val debug = Unsynchronized.ref false;
+
 
 (* exn_context *)
 
@@ -52,7 +55,7 @@
         | _ => cat_lines (("exception " ^ name ^ " raised" ^ pos ^ ":") :: msgs))
       end;
 
-    val detailed = ! Output.debugging;
+    val detailed = ! debug;
 
     fun exn_msgs context exn =
       if Exn.is_interrupt exn then []
@@ -94,11 +97,10 @@
   | msgs => cat_lines msgs);
 
 
-
 (** controlled execution **)
 
 fun debugging f x =
-  if ! Output.debugging then
+  if ! debug then
     Exn.release (exception_trace (fn () =>
       Exn.Result (f x) handle
         exn as UNDEF => Exn.Exn exn
--- a/src/Pure/Isar/toplevel.ML	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Pure/Isar/toplevel.ML	Fri Sep 17 22:17:57 2010 +0200
@@ -215,7 +215,7 @@
 (** toplevel transitions **)
 
 val quiet = Unsynchronized.ref false;
-val debug = Output.debugging;
+val debug = Runtime.debug;
 val interact = Unsynchronized.ref false;
 val timing = Output.timing;
 val profiling = Unsynchronized.ref 0;
--- a/src/Pure/ProofGeneral/proof_general_emacs.ML	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Pure/ProofGeneral/proof_general_emacs.ML	Fri Sep 17 22:17:57 2010 +0200
@@ -79,7 +79,6 @@
   Output.report_fn := (fn _ => ());
   Output.priority_fn := message (special "I") (special "J") "";
   Output.tracing_fn := message (special "I" ^ special "V") (special "J") "";
-  Output.debug_fn := message (special "K") (special "L") "+++ ";
   Output.warning_fn := message (special "K") (special "L") "### ";
   Output.error_fn := message (special "M") (special "N") "*** ";
   Output.prompt_fn := (fn s => Output.std_output (render s ^ special "S")));
--- a/src/Pure/ProofGeneral/proof_general_pgip.ML	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Pure/ProofGeneral/proof_general_pgip.ML	Fri Sep 17 22:17:57 2010 +0200
@@ -166,8 +166,7 @@
   Output.priority_fn := (fn s => normalmsg Status s);
   Output.tracing_fn := (fn s => normalmsg Tracing s);
   Output.warning_fn := (fn s => errormsg Message Warning s);
-  Output.error_fn := (fn s => errormsg Message Fatal s);
-  Output.debug_fn := (fn s => errormsg Message Debug s));
+  Output.error_fn := (fn s => errormsg Message Fatal s));
 
 
 (* immediate messages *)
--- a/src/Pure/System/isabelle_process.ML	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Pure/System/isabelle_process.ML	Fri Sep 17 22:17:57 2010 +0200
@@ -109,7 +109,6 @@
     Output.tracing_fn  := standard_message out_stream true "E";
     Output.warning_fn  := standard_message out_stream true "F";
     Output.error_fn    := standard_message out_stream true "G";
-    Output.debug_fn    := standard_message out_stream true "H";
     Output.priority_fn := ! Output.writeln_fn;
     Output.prompt_fn   := ignore;
     (in_stream, out_stream)
--- a/src/Pure/System/isabelle_process.scala	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Pure/System/isabelle_process.scala	Fri Sep 17 22:17:57 2010 +0200
@@ -28,8 +28,7 @@
       ('D' : Int) -> Markup.WRITELN,
       ('E' : Int) -> Markup.TRACING,
       ('F' : Int) -> Markup.WARNING,
-      ('G' : Int) -> Markup.ERROR,
-      ('H' : Int) -> Markup.DEBUG)
+      ('G' : Int) -> Markup.ERROR)
     def is_raw(kind: String) =
       kind == Markup.STDOUT
     def is_control(kind: String) =
--- a/src/Tools/jEdit/dist-template/etc/isabelle-jedit.css	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Tools/jEdit/dist-template/etc/isabelle-jedit.css	Fri Sep 17 22:17:57 2010 +0200
@@ -6,7 +6,6 @@
 .tracing { background-color: #F0F8FF; }
 .warning { background-color: #EEE8AA; }
 .error { background-color: #FFC1C1; }
-.debug { background-color: #FFE4E1; }
 
 .report { display: none; }
 
--- a/src/Tools/jEdit/src/jedit/output_dockable.scala	Fri Sep 17 21:50:44 2010 +0200
+++ b/src/Tools/jEdit/src/jedit/output_dockable.scala	Fri Sep 17 22:17:57 2010 +0200
@@ -32,7 +32,6 @@
   /* component state -- owned by Swing thread */
 
   private var zoom_factor = 100
-  private var show_debug = false
   private var show_tracing = false
   private var follow_caret = true
   private var current_command: Option[Command] = None
@@ -68,8 +67,7 @@
               val snapshot = doc_view.model.snapshot()
               val filtered_results =
                 snapshot.state(cmd).results.iterator.map(_._2) filter {
-                  case XML.Elem(Markup(Markup.TRACING, _), _) => show_tracing
-                  case XML.Elem(Markup(Markup.DEBUG, _), _) => show_debug
+                  case XML.Elem(Markup(Markup.TRACING, _), _) => show_tracing  // FIXME not scalable
                   case _ => true
                 }
               html_panel.render(filtered_results.toList)
@@ -122,13 +120,6 @@
   private val zoom = new Library.Zoom_Box(factor => { zoom_factor = factor; handle_resize() })
   zoom.tooltip = "Zoom factor for basic font size"
 
-  private val debug = new CheckBox("Debug") {
-    reactions += { case ButtonClicked(_) => show_debug = this.selected; handle_update() }
-  }
-  debug.selected = show_debug
-  debug.tooltip =
-    "<html>Indicate output of debug messages<br>(also needs to be enabled on the prover side)</html>"
-
   private val tracing = new CheckBox("Tracing") {
     reactions += { case ButtonClicked(_) => show_tracing = this.selected; handle_update() }
   }
@@ -146,7 +137,7 @@
   }
   update.tooltip = "Update display according to the command at cursor position"
 
-  val controls = new FlowPanel(FlowPanel.Alignment.Right)(zoom, debug, tracing, auto_update, update)
+  val controls = new FlowPanel(FlowPanel.Alignment.Right)(zoom, tracing, auto_update, update)
   add(controls.peer, BorderLayout.NORTH)
 
   handle_update()