[armedbear-devel] how to redirect format function to a socket stream

Erik Huelsmann ehuels at gmail.com
Sun May 13 19:15:54 UTC 2012


Hi Santiago,

Welcome to Armed Bear Common Lisp (and Common Lisp in general)!

I've a socket stream named "socket" in this port and host: 50362 and
> localhost
>
> I've written this function to redirect format function to the socket but
> only appears NIL. How can I redirect format t lisp function to a socket?
>
> (defun colors()
> (WITH-OPEN-STREAM (socket (SOCKET:SOCKET-CONNECT 50362 "localhost"))
>  (let ((*standard-output* socket))
> (format t "The color is ~A" "red")
>  )))
>

Maybe the underlying stream wants to optimize the socket writes and keeps
your write buffered for now? In that case, you want to use FORCE-OUTPUT to
make sure all internal buffers get written to the stream.

Hope that helps!

Bye,

Erik.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/armedbear-devel/attachments/20120513/7d9edd74/attachment.html>


More information about the armedbear-devel mailing list