From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/70342 Path: news.gmane.org!not-for-mail From: Daniel Pittman Newsgroups: gmane.emacs.gnus.general Subject: Re: Faster, lolcat. Faster! Date: Thu, 02 Sep 2010 14:48:50 +1000 Message-ID: <8739ts92dp.fsf@rimspace.net> References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: dough.gmane.org 1283429116 24062 80.91.229.12 (2 Sep 2010 12:05:16 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 2 Sep 2010 12:05:16 +0000 (UTC) To: ding@gnus.org Original-X-From: ding-owner+M18727@lists.math.uh.edu Thu Sep 02 14:05:15 2010 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Or8XZ-0002ma-ES for ding-account@gmane.org; Thu, 02 Sep 2010 14:05:13 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1Or8XR-0007xE-7b; Thu, 02 Sep 2010 07:05:05 -0500 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1Or1mX-0005RK-D8 for ding@lists.math.uh.edu; Wed, 01 Sep 2010 23:52:13 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtp (Exim 4.72) (envelope-from ) id 1Or1mT-0001ju-6V for ding@lists.math.uh.edu; Wed, 01 Sep 2010 23:52:13 -0500 Original-Received: from lo.gmane.org ([80.91.229.12]) by quimby.gnus.org with esmtp (Exim 3.36 #1 (Debian)) id 1Or1mS-0007Pa-00 for ; Thu, 02 Sep 2010 06:52:08 +0200 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1Or1mN-00032E-0Q for ding@gnus.org; Thu, 02 Sep 2010 06:52:03 +0200 Original-Received: from sdcarl02.strategicdata.com.au ([203.214.67.82]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 02 Sep 2010 06:52:02 +0200 Original-Received: from daniel by sdcarl02.strategicdata.com.au with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 02 Sep 2010 06:52:02 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 46 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: sdcarl02.strategicdata.com.au User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) Cancel-Lock: sha1:95l/k2/Mum7lPidta619hvNMgOQ= X-Spam-Score: -1.9 (-) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:70342 Archived-At: Lars Magne Ingebrigtsen writes: > Now that Gnus is bug-free (because I haven't hacked much on Gnus the past > years) and has HTML support (because I have this week), I think it's time to > have a long good look at why `g' is so slow. > > I mean, it's just querying some mail servers and some nntp servers. I > though take less than a second, total, if you're not contacting half the > servers in the world. [...] > 3) Streaming. I think many of the things that talk to servers over the > net can be more streaming than they are now. Probably. Watch out for nasty pipelining issues with obscure servers. Not that I have touched anything doing this for years, so can't remember what they were. IIRC some NNTP / NNRP servers discard input after some errors, among other things. (Not, I suspect, that you are not already all over that.) [...] > 4) Multi-threading. This is the most difficult bit, but could yield > good results. If you're requesting active files from two different nntp > servers, and getting mail, there's really no reason why those three > activities shouldn't happen at the same time. Implementing asynchronous > things in Emacs is a pain ...but some people have gone ahead and built nicer models over the top of it. My personal favorite is the heart of `jabber.el'[1], which is a finite state machine implementation designed to do asynchronous stuff.[2] (It works very nicely for my chatting with Emacs, anyhow. ;) Daniel Footnotes: [1] http://emacs-jabber.sourceforge.net/ [2] http://emacs-jabber.git.sourceforge.net/git/gitweb.cgi?p=emacs-jabber/emacs-jabber;a=blob;f=fsm.el;h=512cef0e803faef8d05a666a901a3b6af41b0f4f;hb=HEAD -- ✣ Daniel Pittman ✉ daniel@rimspace.net ☎ +61 401 155 707 ♽ made with 100 percent post-consumer electrons