From 633695792b5faa42856483b8778026a9453d43c7 Mon Sep 17 00:00:00 2001 From: Jono Spiro Date: Fri, 27 Aug 2004 19:27:50 +0000 Subject: [PATCH] svn: r176 --- collects/mztake/doc.txt | 10 +++++----- collects/mztake/mztake.ss | 28 ++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/collects/mztake/doc.txt b/collects/mztake/doc.txt index 24b4c21ab0..355aee5deb 100644 --- a/collects/mztake/doc.txt +++ b/collects/mztake/doc.txt @@ -248,7 +248,7 @@ In more depth, the debugger works on a model roughly as follows: DrScheme (in the "module ..." language). It is assumed the module has "side-effects" which start the target program. - The rest of the files traced in a MZTAKE-PROCESS are modules + The rest of the files traced in a DEFINE-MZTAKE-PROCESS are modules used *by* the main module, allowing you to see what is going on deeper than in the main-module. For example: @@ -310,13 +310,13 @@ ping the value of one or more variables when the trace point is reached. <2> [trace-name line-number column-number bind 'variable-name] <3> [trace-name line-number column-number bind '(variable-name ...)] - MZTAKE-PROCESS defines the variable process-name, + DEFINE-MZTAKE-PROCESS defines the variable process-name, whose value is a MzTake process object. That object can be passed to functions such as START/RESUME, KILL, and "process:runtime/milliseconds", documented in the next section. - MZTAKE-PROCESS installs trace points in one or many files, + DEFINE-MZTAKE-PROCESS installs trace points in one or many files, as indicated by the trace-clauses. The target-filename can be any file specification accepted by the standard REQUIRE syntax for modules: @@ -381,7 +381,7 @@ and can be used in the Interactions window. > (start/resume process-name) - Start the execution and monitoring of the MZTAKE-PROCESS, + Start the execution and monitoring of the DEFINE-MZTAKE-PROCESS, process-name. If the process given to START/RESUME is already running, and was paused with the function PAUSE (below), START/RESUME resumes its execution. @@ -589,7 +589,7 @@ Known Problems For instance, you get an error if you make a module like this on Windows: - (module m mzschem + (module m mzscheme (require (lib "my-lib.ss" "mycollect" "private")) (provide (lib "my-lib.ss" "mycollect/private"))) diff --git a/collects/mztake/mztake.ss b/collects/mztake/mztake.ss index 39f3dcc1b3..7e6c01338a 100644 --- a/collects/mztake/mztake.ss +++ b/collects/mztake/mztake.ss @@ -12,6 +12,34 @@ * MAKE SURE THERE WONT BE COLLISIONS WHEN EVAL'NG MODULES...GIVE THEM UNIQUE NAMES BASED ON PATH! :::::::::::::::::::::::::::::::::::::::::: +CHANGES TO MAKE----------------------------------------------------------------------------- +Mailing list just for MzTake updates + +Demo monitoring DrScheme for Robby? + +Bind Stop button to kill-all. + +Remove the tool button for 299 update. + +Reword hacked changes in doc.txt for stopping MzTake with kill + +Test Suite for debugger annotator + +Demo and docs for debugging multiple files, to make Robby happy. It is true that the docs are not very helpful on this count. It'd be nice if you could mock up a quick example of tracing something inside DrScheme.... + +On the whole, I like the tool, although it'd be nice to have either + (a) an interactive pointy-clicky interface rather than figuring + out line/column co-ordinates, or + (b) an AST-based description of the thing to be monitored (shades + of aspect-oriented programming). + +(1) montecarlo never gets to pi: I think there's a math error. +Shouldn't montecarlo.ss check whether (length . <= . 200)? Otherwise, you're off by about 1% which gives an underestimate by about 0.03. (You could speed it up by removing the sqrt call and checking against 40000). + +(2) dijkstra seems to go into an infinite loop -- but I don't know what the source of the problem is, because + +(3) plt scheme becomes quite unstable: the STOP button no longer works, and I end up killing things using Windows Task Manager, at which point I cannot run PLT Scheme (208) until I reboot :-( + Re-direct, or at least prefix, program output from the client so that it can be distinguished from the script