[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Pushing the `gnus-range-*' functions down into the C layer
From: |
Lars Magne Ingebrigtsen |
Subject: |
Pushing the `gnus-range-*' functions down into the C layer |
Date: |
Thu, 09 Sep 2010 17:16:56 +0200 |
User-agent: |
Gnus/5.110011 (No Gnus v0.11) Emacs/24.0.50 (gnu/linux) |
Would anyone mind if I implemented the `gnus-range-*' functions in C for
Emacs 24? Gnus spends significant time on group entry/exit doing range
handling/compressing/etc, and I think the functions are (slightly)
generally useful.
Gnus addresses articles by their number, so you have things like the
"marked" list of articles that looks like
(3 4 5 6 7 11 14 15 16 17 18)
(or something). To save loading/saving time, these are stored in the
.newsrc.eld file as range structures, which look like this:
((3 . 7) 11 (14 . 18))
To handle this, Gnus has a set of functions for computing
intersections/differences/etc on the range structures. However, Emacs
Lisp isn't really fast at doing this, so if you exit from a group that
needs lots (I mean *lots*) of range handling, you get an annoying wait
while it sits there computing.
So I'm proposing implementing a set of useful functions in C, like
`range-memq', `range-add', `range-intersection' and stuff.
Thoughts?
--
(domestic pets only, the antidote for overdose, milk.)
address@hidden * Lars Magne Ingebrigtsen
- Pushing the `gnus-range-*' functions down into the C layer,
Lars Magne Ingebrigtsen <=
- Re: Pushing the `gnus-range-*' functions down into the C layer, Ted Zlatanov, 2010/09/09
- Re: Pushing the `gnus-range-*' functions down into the C layer, Lars Magne Ingebrigtsen, 2010/09/09
- Re: Pushing the `gnus-range-*' functions down into the C layer, Ted Zlatanov, 2010/09/09
- Re: Pushing the `gnus-range-*' functions down into the C layer, Stephen J. Turnbull, 2010/09/09
- Re: Pushing the `gnus-range-*' functions down into the C layer, Ted Zlatanov, 2010/09/10
- Re: Pushing the `gnus-range-*' functions down into the C layer, Lars Magne Ingebrigtsen, 2010/09/10
- Re: Pushing the `gnus-range-*' functions down into the C layer, Leo, 2010/09/10
- Re: Pushing the `gnus-range-*' functions down into the C layer, Lars Magne Ingebrigtsen, 2010/09/10
- Re: Pushing the `gnus-range-*' functions down into the C layer, Wojciech Meyer, 2010/09/10
- Re: Pushing the `gnus-range-*' functions down into the C layer, Stefan Monnier, 2010/09/11