Re: Offlineimap and notebook computers
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
On Friday 06 July 2007 4:59:37 pm Vincent Beffara wrote:
> How about using an asynchronous framework like twisted instead of
> threads ? That would allow for killing (or dropping) separate clients
> without having to rewrite everything in a different language ...
I actually tried rewriting OfflineIMAP in Twisted. I had it sort of working
single-threaded even. The repo is probably still sitting around somewhere.
Twisted turned out to be hell to debug. Tracing program flow was next to
impossible.
If I rewrite OfflineIMAP to that extent, it will probably be using Haskell,
where I can write me own IMAP client library far easier than in Python, and
where I get more powerful threads and async libraries as well.
Haskell's async support (via its forkIO call) tries to be indistinguishable
from multithreaded programs as much as possible, which is really cool. You
can even write code such that it works via async or via threads, needing
only to change two characters in how new threads are spawned to select
between them.
-- John
|
|