Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Slime streams always report #'interactive-stream-p as NIL #38

Open
joaotavora opened this issue Dec 20, 2013 · 2 comments
Open

Slime streams always report #'interactive-stream-p as NIL #38

joaotavora opened this issue Dec 20, 2013 · 2 comments

Comments

@joaotavora
Copy link
Contributor

bug imported from https://bugs.launchpad.net/slime/+bug/985085

@ghost ghost assigned joaotavora Dec 23, 2013
@luismbo luismbo removed their assignment Feb 19, 2014
@informatimago
Copy link

informatimago commented Apr 23, 2021

The bug description was:

(mapcar #'interactive-stream-p (list *debug-io* *error-output* *query-io* *standard-input* *standard-output* *trace-output*))

Running the above in the Slime REPL incorrectly yields (NIL NIL NIL NIL NIL NIL).

Running it in the raw SBCL REPL correctly yields (T T T T T T).

I'm using SBCL 1.0.51 and Slime 2012-04-07 from Quicklisp.

Alexander commented:

Hey, guys! Does somebody have any ideas how to fix it?

In some implementations, interactive-stream-p is a generic method. For example, in ccl and in sbcl. In those cases, it should be a simple matter of overriding it for swank-streams.

In ccl and in sbcl:

test> (values *standard-input* *standard-output*)
#<swank/gray::slime-input-stream #x302002194CED>
#<swank/gray::slime-output-stream #x302002194BBD>
test> (defmethod interactive-stream-p ((stream swank/gray::slime-input-stream)) t)
#<standard-method interactive-stream-p (swank/gray::slime-input-stream)>
test> (defmethod interactive-stream-p ((stream swank/gray::slime-output-stream)) t)
#<standard-method interactive-stream-p (swank/gray::slime-output-stream)>
test> (interactive-stream-p *standard-input*)
t
test> (interactive-stream-p *standard-output*)
t
test> 

@informatimago
Copy link

Now, the problem is to make LISTEN work correctly on slime-input-streams! Since that's basically the only CL operator that depends on an interactive-stream to give a specific result.

melisgl pushed a commit to melisgl/slime that referenced this issue Feb 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants