From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/10688 Path: main.gmane.org!not-for-mail From: Greg Stark Newsgroups: gmane.emacs.gnus.general Subject: asynchronous backends Date: 14 Apr 1997 09:16:41 -0400 Sender: gsstark@MIT.EDU (Greg Stark) Message-ID: NNTP-Posting-Host: coloc-standby.netfonds.no X-Trace: main.gmane.org 1035150515 25771 80.91.224.250 (20 Oct 2002 21:48:35 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sun, 20 Oct 2002 21:48:35 +0000 (UTC) Return-Path: Original-Received: from ifi.uio.no (0@ifi.uio.no [129.240.64.2]) by deanna.miranova.com (8.8.5/8.8.5) with SMTP id IAA07971 for ; Mon, 14 Apr 1997 08:23:38 -0700 Original-Received: from g63-105.citenet.net (brnstndkramden.acf.nyu.edu@g63-105.citenet.net [207.183.47.105]) by ifi.uio.no with ESMTP (8.6.11/ifi2.4) id for ; Mon, 14 Apr 1997 17:01:36 +0200 Original-Received: by g63-105.citenet.net id m0wGlcr-0008eMC (Debian Smail-3.2 1996-Jul-4 #2); Mon, 14 Apr 1997 09:16:53 -0400 (EDT) Original-Sender: gsstark@g62-78.citenet.net Original-To: ding@ifi.uio.no Original-Lines: 32 Xref: main.gmane.org gmane.emacs.gnus.general:10688 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:10688 Ok, so sometime late in the september Gnus cycle i sent a nice long post describing how an asynchronous interface could be done. Looking at the code and the documentation now, it seems only half of what i described was done. Namely, it's nice and all that nntp can pre-fetch articles before i ask for them, but that's not the really cool idea. The really cool idea is that when i enter a new group and there are four gazillion new articles and i really want to read them all, while Gnus is fetching the NNTP scan it can let me go back to editing my files (edit files? in emacs?) In general it really sucks a lot when my emacs freezes up and i can't do anything without aborting the long Gnus operation, some of us feel, uhm, like less of a person when our emacs is locked up. This would also let Gnus do some other cool things, like request group lists from multiple servers at the same time. This makes more sense if more than one backend is involed; if i have a slow network, why not go poking around in my files while you're waiting for the nntp server to answer? Or let me start reading my mail while it's still fetching the group list from some other server. The reason i posted the original message was because i was implementing a backend for which the existing emacs interface was asynchronous in precisely this way. I still feel ashamed that i can't reproduce the single nicest feature of the existing interface in my Gnus backend. If you don't believe me that this is possible, think of the Man package. There are some tricky bits, and if you try a second operation using the same virtual server it may have to lock up anyways, but it could be done. I'll go find my original post if needed, it explained this in more detail. greg