On Fri, Jan 20, 2006 at 07:51:59PM -0500, [EMAIL PROTECTED] wrote: > The harm comes from continuously repeating the same vague, baseless > differences of opinion with Twisted developers. The fact that Andrea > Arcangeli happens to prefer code that is in the library model rather than > the framework model is not a serious criticism of Twisted. Nor is the fact
I repeated it so many times but it seems you didn't got what I meant yet. It was never a criticism to Twisted, I was talking about Nevow. The only criticism I have to Twisted is that it doesn't scale in SMP, despite it theoretically could but nobody attempted it yet (ok, python would be bad at running it so I guess it wouldn't make much sense in practice even if it's an attractive idea in theory). Not scaling in smp is bad but I don't want to get into those details, for now getting twisted.web2 stable single threaded would be enough... The API provided by Twisted is not a limitation because it offers all features already, it's just an extension of the socket API (which is fixed in stone anyway). Twisted just provides an abstraction of it and that's good in my opinion. To make a parallel in the kernel we've lots of apis where you've to register into. The VFS is the most obvious example of that. Filesystems have to be written following a strict API and there's no (sane) way to make a filesystem without following those strict rules and those strict callbacks. Because again this API is the one that userland sees (reiser4 tried to break that rule, but I think they backed it out since it wasn't backwards compatible). However in a moltitude of other cases it's possible to create a library that is being called (instead of calling). USB is an example of that. The lowlevel drivers just use a library. It's the driver code that calls into the usb highlevel, not the other way around. parport is similar. When it's possible to do that, it's much nicer to do that, since it leaves an higher degree of flexibility to the developer. SCSI unfortunately didn't do that, and scsi become hard to maintain in fact. All scsi drivers in linux are just implementing callbacks and that's sometime not flexible enough (I had myself troubles with recursion into the scsi higlevel code when I was hacking on ppa initially). Please don't confuse my criticism to the nevow way of hooking inside the app way beyond its templating library job, with a criticism to twisted. _______________________________________________ Twisted-web mailing list [email protected] http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
