>>>>> "Peter" == Peter Denno <[EMAIL PROTECTED]> writes:
Peter> ;;;============== EXAMPLE 1 - break on error ===============
Peter> Particularly I was referring to the stuff beginning below with "starting
here
---> ": (1) Printing the top of the stack seems redundant with the error
Peter> printed before the "Restarts:". And I can get that information easy. (2)
Peter> "Debug (type H for Help)" - isn't it enough that I have the debugger
prompt?
I think it that line is useful for someone unfamiliar with CMUCL's
debugger.
Peter> No matching method for the generic function
Peter> #<STANDARD-GENERIC-FUNCTION XML-QUERY-DATA-MODEL:CHILDREN (5) {28649939}>,
Peter> when
Peter> called with arguments (NIL).
Peter> [Condition of type PCL::NO-APPLICABLE-METHOD-ERROR]
Peter> Restarts:
Peter> 0: [CONTINUE] Retry call to :FUNCTION.
Peter> 1: [ABORT ] Return to Top-Level.
Peter> starting here ---------->
Peter> Debug (type H for help)
Peter> ("DEFMETHOD NO-APPLICABLE-METHOD (T)" #<unused-arg> #<unused-arg>
Peter> #<STANDARD-GENERIC-FUNCTION XML-QUERY-DATA-MODEL:CHILDREN (5)
{28649939}>
Peter> (NIL))
Peter> Source:
Peter> ; File: target:pcl/braid.lisp
Peter> ; File has been modified since compilation:
Peter> ; target:pcl/braid.lisp
Peter> ; Using form offset instead of character position.
Peter> (CERROR "Retry call to ~S."
Peter> 'NO-APPLICABLE-METHOD-ERROR
Peter> :FUNCTION
Peter> GENERIC-FUNCTION
Peter> ...)
Peter> <-------- ending here
Yes, this is a bit verbose and I do find it somewhat annoying.
Peter> ;;;============== EXAMPLE 2 -- compilation ======================
Peter> Since you brought up compiler output...
Peter> ; Python version 1.1, VM version Intel x86 on 10 OCT 03 08:41:03 pm.
Peter> ... That's not really useful. Maybe it could be said once at start-up.
Peter> ; Compiling:
Peter> /home/pdenno/sis/repo/source/modelAnalysis/readers/xsd-reader.lisp 10 OCT
03
Peter> 08:34:05 pm
Peter> ... Putting the date and time here seems overkill.
Peter> ; Compilation finished in 0:00:01.
Peter> ... as does this. If I cared about time, I'd time it myself.
A bit verbose. Easy to change, but you have to hack the sources.
Peter> ;;;============== EXAMPLE 3 -- compilation =========================
Peter> (1) Here I can (declaim (optimize (ext:inhibit-warnings 3))), but that
isn't
Peter> sticky (I can't just put it in my init.lisp and be done with it). (2) We
get
I think it would be a bad idea to turn off these warnings globally.
Peter> a similar warnings when evaluating an undeclared global at top level. I
know
Peter> I can get rid of it, with (setf ext:*top-level-auto-declare* t), but I
Peter> wouldn't mind the message if it took up 1 line. However as it is, useful
Peter> stuff is scrolling off the screen.
That could probably be cleaned up to take one or 2 lines.
Peter> ; Loading #p"/opt/cl-binary/model-analysis/cmufasl/readers/xsd-reader.x86f".
Peter> ;
Peter> ;
Peter> ; File: /home/pdenno/sis/repo/source/modelAnalysis/readers/xsd-reader.lisp
Peter> ; In: DEFMETHOD |Element-Constructor| (XSD-CONSTRUCTION-CONTEXT T T T)
Peter> ; (SETF *EEE* ELEM)
Peter> ; ==>
Peter> ; (SETQ *EEE* ELEM)
Peter> ; Warning: Undefined variable *EEE*
Peter> ; ;
Peter> ; Warning: This variable is undefined:
Peter> ; *EEE*
Peter> ;
Peter> ; Compilation unit finished.
Peter> ; 2 warnings
Peter> ... Why is that 2 warnings? It says the same thing twice for one line of
code.
The heuristics on when and how to print warnings needs work here I
guess.
Peter> Then tells me there were two of them.
Well, if you compile cmucl, you'll see that compiling pathname.lisp
produces:
; Warning: 37973 more uses of undefined type STREAM:FILE-SIMPLE-STREAM.
Fortunately, only 2 cases are actually printed out. :-)
Peter> The above sounds like lots of whining. I don't mean to complain -- you guys
Peter> are doing a great job -- its just hard to find the relevant stuff in all
this
Peter> output. I'd try to help, but just compiling cmucl is a pretty tough job. I
Peter> was successful at one time, but not lately
Consider using Pierre Mai's build scripts using a snapshot build. You
should be able to build it fairly easily.
Overall, since I run cmulisp inside of emacs via ilisp, things
scrolling off don't bother me much.
Ray