home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!gatech!rutgers!micro-heart-of-gold.mit.edu!bloom-beacon!INTERNET!dont-send-mail-to-path-lines
- From: jeff@aiai.edinburgh.ac.UK (Jeff Dalton)
- Newsgroups: comp.lang.scheme
- Subject: Re: wots going on here!?
- Message-ID: <1187.9208311520@subnode.aiai.ed.ac.uk>
- Date: 31 Aug 92 15:20:02 GMT
- Sender: daemon@athena.mit.edu (Mr Background)
- Organization: The Internet
- Lines: 73
-
- > Date: 30 Aug 92 04:28:33 GMT
- > From: Brian Harvey <bh@anarres.cs.berkeley.edu>
-
- > The behavior I want would be *less* verbose:
- >
- > > (+ 2 a)
- > Unbound variable: a
- >
- > >
- >
- > Short and sweet. It should be possible for an advanced user to ask
- > for pause-on-error behavior in which Scheme would attempt to preserve
- > the environment in which the error occurred, but you should have to
- > ask for it. (This is how Logo does things.
-
- I would find it completely unacceptable. Reasons: 1. I often have
- more than one variable with the same name and so I need to know what
- function it is in, at least. 2. I may not want to give up the whole
- computation just because of an error. 3. I may want to look around
- a bit to find out more about the error.
-
- However, I think it's important for the break look (debugger) to be
- as much like the top level as possible. In particular, it should
- work to type expressions in the usual way. Popping back one level
- should be easy, such as typing a single character.
-
- I can see how beginners might find it confusing (or something)
- to have to type a character that gets them back to the top level,
- but it's not hard to get used to it.
-
- But if you want it to work the other way, it's easy to get an
- Emacs mode such as ILisp to always send the "pop" command for
- you when an error occurs.
-
- > Date: 30 Aug 92 14:23:23 GMT
- > From: "Guillermo J. Rozas" <jinx@zurich.ai.mit.edu>
-
- > I'm sorry, but I disagree strongly with this view of the world.
- > It is very close to the C/Unix printing "segmentation violation (core
- > dumped)" and giving you back a shell prompt.
-
- Not quite that bad, since you get the variable name and since starting
- up again is (usually) simpler and faster than "recompile and run it
- under the debugger".
-
- > Date: Sun, 30 Aug 1992 18:25:48 GMT
- > From: Matt Wright <matt@volga.berkeley.edu>
-
- > >I'm sorry, but I disagree strongly with this view of the world.
- > >It is very close to the C/Unix printing "segmentation violation (core
- > >dumped)" and giving you back a shell prompt.
- > >
- > >Your answer of having to tweak a flag or whatever is analogous to
- > >saying "recompile and run it under the debugger".
- >
- > I disagree. You way is analogous to having it be so that typing "mial"
- > instead of "mail" opens up a new shell with a fresh set of environment
- > variables and puts you into the debugger, instead of printing an error
- > message and giving you another prompt.
-
- No it's not. Look, these things happen to me, and to lots of other
- people reading this newsgroup. If being able to do some debugging
- after an "undefined variable" error really was that much like entering
- a new shell after mistyping a command, do you think we'd be incapable of
- seeing that it was the same?
-
- The only time it's the same is when the undefined variable is in
- the expression you just typed to Scheme.
-
- Now, if you said that Scheme ought to avoid entering a debug loop
- in that case, I might agree with you.
-
- -- jd
-