On Oct 5, 2011, at 11:39 AM, Robby Findler wrote:

>>  It seems to me that the only time anybody [rational] does a Check Syntax is 
>> just after changing something in the Definitions pane, so anything that was 
>> in the Interactions pane is now invalid, just as though they had clicked 
>> "Run".  What if Check Syntax were to CLEAR the interactions pane rather than 
>> just hiding it?  Does anybody see a good reason NOT to do this?
>> 
> 
> Well, usually when the REPL is reset, there is a program that's been
> run to make a new REPL with.
> 
> To address this kind of issue there is that big yellow warning across
> the bottom of the screen which seems more like what we want here,
> since this kind of interaction can happen just fine without the
> student clicking check syntax. (Ie they can edit something, forget to
> hit Run and then go to the REPL).

That would be fine with me.

In fact, this issue really doesn't have anything to do with "Check Syntax"; the 
rule would be "as soon as the Definitions pane is modified, put a yellow 
warning label on the Interactions pane."

(At present it seems to be "If you type something in the Interactions pane, and 
the Definitions pane has been modified since last 'Run', put a yellow warning 
label on the Interactions pane.")

The problem is that the "warning" is in scary language, and if it comes up 
whenever you do ANYTHING to the Definitions pane, people will spend their lives 
scared.  Furthermore, it tells you to "Click Run"; if taken literally, this 
would lead people to click Run after every keystroke they type in the 
Definitions pane.  Perhaps the right answer is to re-word the message to 
something like

"The definitions pane has changed since the last Run, so what's in the 
interactions pane may no longer match it.  Once you're done changing the 
definitions pane, click Run."

(Yes, that's too wordy, but it says what I want to say.)

A much less wordy and intrusive way to put it would be to grey-out the 
background of the Interactions pane whenever the Definitions pane has changed 
since the last Run.  This would however be much less "discoverable".

A radical answer would be to automatically hide the Interactions pane whenever 
the Definitions pane has changed since the last Run, and not show it again 
until you hit Run.  Eliminate the "show interactions" and "hide interactions" 
menu commands entirely: the interactions pane is visible iff the definitions 
pane is unmodified.


Stephen Bloch
sbl...@adelphi.edu


_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to