Gnus development mailing list
 help / color / mirror / Atom feed
From: Jesper Harder <harder@ifa.au.dk>
Subject: Re: Using CL in Gnus
Date: Fri, 28 Nov 2003 18:08:01 +0100	[thread overview]
Message-ID: <m38ym0e80e.fsf@defun.localdomain> (raw)
In-Reply-To: <m37k1keb3b.fsf@hamster.pflaesterer.de> (Karl =?iso-8859-1?q?Pfl=E4sterer's?= message of "Fri, 28 Nov 2003 17:30:54 +0100")

sigurd@12move.de (Karl Pflästerer) writes:

> `dolist' could be used here.  That's in cl-macs.el so could be used
> with eval-when-compile and for a reader is easier to see what
> happens (IMO).

In Emacs 21.3 `dolist' has been promoted to subr.el, so it's not even
necessary to eval-when-compile.

> If we start No Gnus we should look for a lot of places in the code
> where mapping over a list is written like that:
>
>         (let ((lst inputlist))
>           (while lst
>             (do-something-with-list lst)
>             .
>             (setq lst (cdr lst))))
>
> To cdr-down a list is not uncommon (above code would be nicer as
> recursive version) but `dolist' is IMO a much better alternative at
> such places.

Yes.  But in a lot of places the list isn't copied first.  In that
case -- and if speed matters -- `dolist' would degrade performance and
consing slightly.




  reply	other threads:[~2003-11-28 17:08 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-24 23:29 gnus-agentize versus emacs 20 mapc Kevin Ryde
2003-11-24 23:57 ` Katsumi Yamaoka
2003-11-25  3:45   ` Kevin Greiner
2003-11-25  4:18     ` Katsumi Yamaoka
2003-11-25 21:47     ` Kevin Ryde
2003-11-26  2:13       ` Katsumi Yamaoka
2003-11-26 11:34         ` Using CL in Gnus (was: gnus-agentize versus emacs 20 mapc) Reiner Steib
2003-11-26 12:23           ` Using CL in Gnus Katsumi Yamaoka
2003-11-26 17:38             ` Reiner Steib
2003-11-26 19:46               ` Karl Pflästerer
2003-11-27 22:41                 ` Reiner Steib
2003-11-28 16:30                   ` Karl Pflästerer
2003-11-28 17:08                     ` Jesper Harder [this message]
2003-11-29  8:04                       ` Miles Bader
2003-11-29  9:10                         ` Jesper Harder
2003-11-29 12:37                           ` Miles Bader
2003-12-01 21:23               ` Ted Zlatanov
2003-12-01 22:54                 ` Katsumi Yamaoka
2003-11-30 13:22           ` Using CL in Gnus (was: gnus-agentize versus emacs 20 mapc) Per Abrahamsen
2003-11-28 21:31         ` gnus-agentize versus emacs 20 mapc Kevin Ryde

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=m38ym0e80e.fsf@defun.localdomain \
    --to=harder@ifa.au.dk \
    /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).