home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / lang / scheme / 2129 < prev    next >
Encoding:
Internet Message Format  |  1992-08-31  |  2.1 KB

  1. Path: sparky!uunet!olivea!mintaka.lcs.mit.edu!ai-lab!zurich.ai.mit.edu!jinx
  2. From: jinx@zurich.ai.mit.edu (Guillermo J. Rozas)
  3. Newsgroups: comp.lang.scheme
  4. Subject: Re: wots going on here!?
  5. Message-ID: <JINX.92Sep1033012@chamarti.ai.mit.edu>
  6. Date: 1 Sep 92 07:30:12 GMT
  7. References: <17timvINN7b8@agate.berkeley.edu> <17tn1uINNkij@early-bird.think.com>
  8.     <JINX.92Aug31170432@chamarti.ai.mit.edu>
  9.     <17ur1oINNem6@agate.berkeley.edu>
  10. Sender: news@ai.mit.edu
  11. Reply-To: jinx@zurich.ai.mit.edu
  12. Organization: M.I.T. Artificial Intelligence Lab.
  13. Lines: 34
  14. In-reply-to: bh@anarres.CS.Berkeley.EDU's message of 1 Sep 92 04:20:08 GMT
  15.  
  16. In article <17ur1oINNem6@agate.berkeley.edu> bh@anarres.CS.Berkeley.EDU (Brian Harvey) writes:
  17.  
  18. |   I think it would be a major improvement to say "not a procedure" or
  19. |   "not a function" [I am not religious about this] instead of
  20. |   "not applicable."
  21.  
  22. I agree.
  23.  
  24. |   But the *really* right error message would be something like
  25. |   "IF didn't return a value" (or COND didn't, or whatever it is).
  26. |   The fact that the non-value was used in function position isn't
  27. |   really what's wrong in this situation.
  28.  
  29. Except that you can't really expect the system to do that.
  30. Both the COND and IF are legal (and the procedures in which they
  31. appear), although probably not what the user meant.
  32.  
  33. A possibility would be to have multiple "unspecified" objects, one for
  34. IF, one for COND, etc., so the object itself would print something like
  35.  
  36. "#[unspecified IF alternative]"
  37.  
  38. which would probably make the error easier to track.
  39. However, it would probably still be confusing to a beginner.
  40.  
  41. |   Btw, is "read-eval-print level 1" the level I was at before the
  42. |   error?  Putting it another way, what level am I at after getting
  43. |   this message?  That's another unclear thing about the message.
  44. |   I think it would be better if that option were called either
  45. |   "evaluate expressions with local variables available" or else
  46. |   "cancel this computation, return to toplevel" -- whichever it means.
  47.  
  48. I did not show the prompt (or the Emacs/Edwin mode line).
  49. They always display the level number, so you would have seen the 1.
  50.