From: Sam S. <sd...@gn...> - 2002-05-27 16:20:49
|
> * In message <m3v...@je...> > * On the subject of "Re: Re[4]: [clisp-list] socket-connect's timeout" > * Sent on 27 May 2002 11:41:21 -0400 > * Honorable Todd Sabin <ts...@op...> writes: > > What about the idea of having a SOCKET-CONNECT% didn't you like? KISS - keep it simple. first, this is not really necessary. if we really will introduce the "half-baked streams" (i.e., streams that will start any i/o operation with a connect() syscall), they can be created when the timeout is 0 (i.e. when otherwise we are guaranteed to get an error). second, I am not sure these "half-baked streams" are a good isea. what do you need them for? > I don't suppose it makes sense to re-suggest the stuff in: > http://www.geocrawler.com/archives/3/1124/2002/1/100/7517822/ does it? here is the problem. I _know_ what you want: you want, basically, bindings/linuxlibc6 in CLISP at all times on all platforms (this is actually what I wanted when I added --with-export-syscalls). Therefore anything short of that will not satisfy you, and a lot of that will not be portable (even across unixes) and will not work too well with the traditional Lisp paradigms, therefore this SOCKET-CONNECT% (which should actually be %SOCKET-CONNECT! :-) will not be enough for you and will be too much for "lisp purists" :-( > Sam already shot that down, but it's another way of dealing with this, > as well as providing UDP sockets, unix domain sockets, etc. To tell > the truth, I've already implemented most of that locally. It needs > some refinement, but works just fine. good. first, wrap it into `#ifdef EXPORT_SYSCALLS'. second, please do try to go a step up from bindings/linuxlibc6: a lot of stuff here can be unified in one function (e.g., FILE-STAT unifies lstat() and fstat()). third, provide a way to get back into the Lisp world, i.e., something like `sys:make-fd-stream' in CMUCL to convert a socket to a stream. (BTW, since the word `socket' is already overused, please call your new type `handle'). -- Sam Steingold (http://www.podval.org/~sds) running RedHat7.2 GNU/Linux <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.palestine-central.com/links.html> Press any key to continue or any other key to quit. |