> On Thu, 27 Aug 2009 03:06:18 -0400, AntonioV <[email protected]> >> I don't think any Scheme >> user is "resistant" to have a standards-compliant "sockets" (XML/ >> Threads/etc) library!!
I am. To give one example, a network package modeled upon Berkeley sockets is far too primitive and low-level. I don't even want to *know* about that kind of detail. I've seen far, far too many network programs that screw up because it is rather difficult to write a good network program when all you have is tin cans and string (that haven't even been tied together yet!). Here's what I want: if I'm using a network, I'm probably either writing a client or server (or peer). There is a protocol to be followed (likely it has been standardized). I want to say very simply ``connect to that machine, use this protocol, and perform this action''. I do *not* want to allocate a SOCKADDR_IN, memset it, setsockopt( TCP_NODELAY), gethostbyname(), select() read bytes, etc. Similarly with threads. These are a disaster. It is very hard to program with concurrency. It is harder still if your concurrancy mechanism is something as primitive as a thread. In nearly every implementation of Common Lisp I've worked on, they've made major errors in concurrency control. And these are the *vendors*. The users have no hope of getting it right. I don't know what the correct solution to concurrency is, but I'm sure we can do better than a thread library. -- ~jrm _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
