From: Michael K. <kr...@co...> - 2003-01-18 00:09:48
|
Moin Sam Steingold, > this is why most communications are done using a fixed protocol. > i.e., you close a connection only after declaring an intent to do so. > (TCP/IP gurus are welcome to refute this!) well - as the mucl-date suggests, by running to fast at factor 60, the code should become the chat part of a multi-user-dungeon. Users in those telnet (like) games may drop the connection either by crashing their user client (some many of them are lisp based ;-) or just but stop playing - and rebooting their Windoof. From a Perl point of view: ignore sigpipe, but provide error conditions for read-line, write-line and socket-status. > what you want is probably > (loop :for sock :in socks :for stat :in stats :do > ...) *hm* i did'nt realise that its possible to run more than one list in a loop - this comes handy. > I really hope our resident network gurus will provide more information! oups - i asumed that YOU are the network guru, from the view at port/net.lisp ;-) the problems with my code: - how to detect :eof with read-line (smells like a clisp 2.30 bug) - how to ignore (or catch) sig_pipe - how to improve socket-status to detect dead sockets. portability/reliabilty: - gcl does not provide something like socket-status (unix select call) - clisp does not have a system-write and system-read - cmu is totaly different Bye Michael -- mailto:kr...@co... UNA:+.? 'CED+2+:::Linux:2.4.6'UNZ+1' http://www.xml-edifact.org/ CETERUM CENSEO WINDOWS ESSE DELENDAM |