[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] Async IO (was Re: libcurl?)

From: Graham Fawcett
Subject: Re: [Chicken-users] Async IO (was Re: libcurl?)
Date: Tue, 4 Oct 2005 15:46:41 -0400

On 10/4/05, Peter Keller <address@hidden> wrote:
> Like where is the debugging manual for Twisted? It isn't obvious...

I'm not sure if things have changed in the past year or so, but one
could ask, "Like where is the *documentation* for Twisted? It isn't
obvious..." ;-)

To be fair, most of my use of Twisted has been at the application
level, e.g. using it as a Web server to drive a higher-level
application which, itself, wasn't written in the "Twisted style".
This, I think, is the norm for most Twisted users. But my experience
in debugging Twisted hasn't been all that painful. To its credit,
Python provides excellent tracebacks when an exception is raised, and
each frame of the stack can be inspected during exception handling:
there's lots of data when something goes wrong. I would hazard a guess
that, without this facility, the Twisted developers would have written
a debugging manual long ago.

IMO, any application that requires more than a single-thread, in a
single process, or which required asynchronous networking, callbacks,
continuations or any other "guess-what-I'm-doing-now" feature, is
going to be a pain to maintain and debug. I don't think there's any
silver bullet here. Nonetheless, a complex single-process/non-blocking
app is arguably easier to debug than a complex multi-threaded app,
since at least you can guarantee that it's only doing one thing at any
given time. :-)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]