output-stream-p is implemented as a generic function. The default method returns
t if stream is an output stream. If the user wants to implement a stream with no inherent directionality (and thus does not include fundamental-input-stream or fundamental-output-stream) but for which the directionality depends on the instance, then a method should be provided for
There is an example in Stream directionality.
LispWorks User Guide and Reference Manual - 13 Feb 2015