Re: Temporarily suppress all error messages

Leo Butler <[email protected]> Tue, 19 May 2026 19:24:38 +0000
Newsgroups gmane.comp.mathematics.maxima.general
Message-ID <[email protected]>
In Yamwi, we bind *STANDARD-OUTPUT* (and *ERROR-OUTPUT*) to an output
string stream during evaluation. Then, as part of the printing of input
and output, we check if either of these are non-empty. This allows a
somewhat finer control over the formatting of these errant lines of
output.

Leo

On Tue, May 19 2026, "Chris Dawes" <[email protected]> wrote:

> I try to dodge all the problems with handling text output by calling
> print with a sentinel value and treating anything between input and
> that value as output or side-effect output that I can capture and
> display, at the expense of a more noisy protocol.
>
> Chris.
>
>
> ------ Original Message ------
> From "Leo Butler" <[email protected]>
> To "Michel Talon" <[email protected]>
> Cc "[email protected]"
> <[email protected]>
> Date 19/05/2026 17:32:01
> Subject Re: [Maxima-discuss] Temporarily suppress all error messages
>
>>Thanks, Barton. The hazards of auto-complete.
>>
>>Michel, Re: MTELL messages.
>>
>>I have come to hate MTELL. In the course of working on Yamwi, where we
>>try to corral all the various messages, warnings and errors from Maxima,
>>MTELL has stood out for me as being the most carelessly crafted way to
>>dump text to a terminal. In my opinion, if Maxima needs to communicate a
>>message to the user that is not a question, then it is at least a
>>warning and should be printed by MWARNING (which prints to
>>*ERROR-OUTPUT*). Indeed, when I grep src/*.lisp for calls to MTELL, it
>>looks like virtually every such call is a warning or an error message. I
>>don't understand why MWARNING is not used for these messages.
>>
>>That's my ¢2.
>>
>>Leo
>>
>>
>>On Tue, May 19 2026, Michel Talon <[email protected]> wrote:
>>
>>>  Le 19/05/2026 à 17:52, Barton Willis a écrit :
>>>
>>>>  Should :lisp(setf *error-output* (make-output-string-stream)) be
>>>>  :lisp(setf *error-output* (make-string-output-stream))?
>>>>
>>>>
>>>  You are right, this works, the other doesn't, because
>>>  make-output-string-stream is a function in sbcl-impl etc.
>>>
>>>  This being said seeing all format output suppressed seems to me quite
>>>  strange. Moreover this also kills merror messages,
>>>
>>>  but not mtell messages, so in my opinion should be discouraged.
>>>
>>>  (%i1) :lisp(setf *error-output* (make-string-output-stream))
>>>
>>>  #<STRING-OUTPUT-STREAM {1201BA2CE3}>
>>>  (%i1) "1/0"~;
>>>
>>>  (%i1) ?merror("What a mess");
>>>
>>>  (%i2) ?mtell("What a mess");
>>>  What a mess(%o2)                                false
>>
>>--
>>---
>>Best regards,
>>Dr Butler
>>_______________________________________________
>>Maxima-discuss mailing list
>>[email protected]
>>https://lists.sourceforge.net/lists/listinfo/maxima-discuss
>

-- 
---
Best regards,
Dr Butler
_______________________________________________
Maxima-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/maxima-discuss