Gnus development mailing list
 help / color / mirror / Atom feed
From: Daniel Pittman <daniel@rimspace.net>
To: ding@gnus.org
Subject: Re: Gnus' speed
Date: Thu, 30 Jul 2009 16:03:34 +1000	[thread overview]
Message-ID: <87skger9l5.fsf@rimspace.net> (raw)
In-Reply-To: <m38wi7utrq.fsf@fleche.redhat.com>

Tom Tromey <tromey@redhat.com> writes:
>>>>>> "Ted" == Ted Zlatanov <tzz@lifelogs.com> writes:
>
> Ted> But there's a bigger problem: Gnus is by design synchronous.  You
> Ted> enter a group, then wait for the summary buffer to be built.  Gnus
> Ted> doesn't have the concept of "enter a buffer and let the articles
> Ted> come in asynchronously" and I doubt it's possible without some
> Ted> multithreading support in Emacs Lisp, which has been discussed many
> Ted> times but is probably far in the future (at least a year, judging
> Ted> by threads in emacs-devel).  Gnus blocks on many other operations
> Ted> too.
>
> Do you mean, this can't be done without threads because it means too
> much rewriting of Gnus?

No, because it requires rewriting of *Emacs* to add support for threads.

That, in turn, would require rebuilding the Emacs Lisp engine to support
concurrency, which in turn will drive you completely insane because a
completely dynamically scoped language doesn't play nicely with threads.

However, if you are seriously interested there is currently some little effort
in either implementing ELisp in Guile, or adding threads, discussed in the
Emacs development groups over the last few months.

> It seems to me that in theory Gnus could work asynchronously by doing work
> in process filters.

Actually, you could also do it with idle timers, and/or redisplay stuff, but
this is enormously non-trivial to achieve and requires rewriting most of the
core of Gnus.

Regards,
        Daniel
-- 
✣ Daniel Pittman            ✉ daniel@rimspace.net            ☎ +61 401 155 707
               ♽ made with 100 percent post-consumer electrons




  reply	other threads:[~2009-07-30  6:03 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-28 18:34 Daniel Clemente
2009-07-28 21:03 ` Leo
2009-07-29  8:03   ` Daniel Clemente
2009-07-29  8:44     ` David Engster
2009-07-29 11:03       ` Karl Kleinpaste
2009-07-29 11:59         ` David Engster
2009-07-29 12:26           ` Karl Kleinpaste
2009-07-29 12:44             ` David Engster
2009-07-29 18:30               ` Ted Zlatanov
2009-07-29 20:19                 ` Tom Tromey
2009-07-30  6:03                   ` Daniel Pittman [this message]
2009-07-31  6:30                 ` Bill White
2009-07-29 18:46           ` Reiner Steib
2009-08-15  1:07           ` Miles Bader
2009-08-15  1:50             ` Daniel Pittman
2009-07-29 18:25       ` Ted Zlatanov
2009-07-29  9:47     ` Leo
2009-07-29 18:24     ` Ted Zlatanov
2009-07-30  5:58       ` Daniel Pittman
2009-07-30 13:33         ` Ted Zlatanov
2009-07-31  5:06           ` Daniel Pittman
2009-08-02 14:20       ` Steinar Bang
2009-08-03 14:38         ` Ted Zlatanov
2009-07-30  5:59     ` Daniel Pittman
2009-07-29  7:07 ` CHENG Gao
2009-07-29 18:20   ` nnrss through Google Reader (was: Gnus' speed) Ted Zlatanov
2009-07-31 13:44     ` nnrss through Google Reader Ted Zlatanov
2009-07-30  0:38   ` Gnus' speed Kevin Ryde
2009-07-29 18:55 ` Reiner Steib
2009-07-30  0:29   ` Kevin Ryde
2009-07-30  7:41     ` Adam Sjøgren
2009-08-04  1:10       ` Kevin Ryde
2009-08-15  1:11     ` Miles Bader
2009-08-15  8:28       ` Steinar Bang
2009-08-16  3:50         ` Miles Bader
2009-08-04 17:48   ` Daniel Clemente
2009-08-04 17:46 ` Daniel Clemente
2009-08-05  5:52   ` Steinar Bang
2009-08-05  5:55     ` Steinar Bang
2009-08-05  8:20       ` Daniel Clemente
2009-08-05 15:10         ` Steinar Bang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87skger9l5.fsf@rimspace.net \
    --to=daniel@rimspace.net \
    --cc=ding@gnus.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).