[slime-devel] SB-EXT:RUN-PROGRAM and *STANDARD-OUTPUT* interaction in REPL

Helmut Eller e9626484 at stud3.tuwien.ac.at
Sat Aug 14 22:04:33 UTC 2004


Michael Weber <michaelw+slime at foldr.org> writes:

> Executing (TEST T) causes the output go to emacs' *inferior-lisp*
> buffer, with (TEST *STANDARD-OUTPUT*) it goes to SLIME's REPL buffer,
> although they should behave the same, AFAICT.

I think T and *STANDARD-OUTPUT* are different in this case.  The
docstring says:
         
     :OUTPUT 
        Either T, NIL, a pathname, a stream, or :STREAM.  If T, the standard
	output for the current process is inherited. ... If a stream,
	all the output from the process is written to this stream. ...

The "standard output" is probably the file descriptor 1.  At least 

  (with-output-to-string (*standard-output*)
     (sb-ext:run-program "/bin/ls" '() :output t))

which just returns "", seems to confirm this.

Helmut.





More information about the slime-devel mailing list