Re: [usocket-devel] Scieneer Common Lisp

Hi Douglas Yes, the CMUCL port is already done. Though SCL is derived from CMUCL, the sockets API between them is a little different, some points I can list below (so far): 1) CMUCL already support basic UDP networking, it has three necessary UDP-related functions: EXT:INET-SENDTO, EXT:INET-RECVFROM, EXT:INET-SHUTDOWN, just direct mapping of UNIX sendto(), recvfrom(), and shutdown() SCL manual doesn't say about these functions, by actual running SCL, I think they're not exist (and should be added). SCL already have EXT:CREATE-INET-SOCKET function, I think it's useless for TCP users because they usually only care a TCP connection as a stream. But for UDP networking, it's essential. I should mention that: even SCL doesn't make any change, support UDP in SCL should be possible: we can always export these unix function through FFI (more code but should work), just like what I do for LispWorks (completely no UDP support in LW, but I wrote one from scratch). 2) The EXT:CONNECT-TO-INET-SOCKET function would be better if add two new keywords: LOCAL-HOST and LOCAL-PORT, this is not for UDP but TCP: sometimes user want to bind to specified local address/port when connect to remote address/port. Almost all other CL platform's sockets API support this. See following discuss on usocket mailing list: http://thread.gmane.org/gmane.lisp.usocket.devel/40 Days later, CMUCL author (Raymond Toy) added all I want in CMUCL 2008-08 snapshot, see this link (cvs diff) http://common-lisp.net/cgi-bin/viewcvs.cgi/src/code/internet.lisp?root=cmucl&r1=1.54&r2=1.55 I hope SCL could make a similar code change like above (if possible). Regards, Chun Tian (binghe)
Hello Chun,
I would be happy to write the SCL port which would be easy if the CMUCL port was already done?
Regards Douglas Crosher
Chun Tian (binghe) wrote:
Hi, Douglas
Thanks very much! I'll investigate the SCL sockets API and give a report days later, and tell you what to be added into SCL to support the new USOCKET package with UDP.
Regards,
participants (1)
-
Chun Tian (binghe)