GNU bug report logs - #67669
29.1; Drop text suggesting using `and' to replace `if'

Previous Next

Package: emacs;

Reported by: Xiyue Deng <manphiz <at> gmail.com>

Date: Wed, 6 Dec 2023 21:48:01 UTC

Severity: normal

Found in version 29.1

Done: Xiyue Deng <manphiz <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Sean Whitton <spwhitton <at> spwhitton.name>
To: Xiyue Deng <manphiz <at> gmail.com>
Cc: 67669 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>
Subject: bug#67669: 29.1; Drop text suggesting using `and' to replace `if'
Date: Fri, 08 Dec 2023 10:45:18 +0000
Hello,

On Thu 07 Dec 2023 at 09:49am -08, Xiyue Deng wrote:

> Agreed on the point of being educational, and of course in the end
> coding style is mostly a matter of personal preference.  However, I
> would argue a bit that in such case we wouldn't need `if' or `when' at
> all as both can be emulated by `and' and `or' if you are careful enough.
> On the other hand, `if' and `when' should exist for a reason.  I quite
> like this suggestion[1] that `if' and `when' are used to guard side
> effects, whereas `and' and `or' are used for pure functions.
> Interestingly the current example you quoted changed from using `and'
> (as in the old version I quoted) to `if' probably based on this
> reasoning.  Similarly I wouldn't suggest to replace `if' with `and' in
> the original example around the text we are discussing:

It's an old Lisp convention, not Emacs-specific, to use 'and' for return
value and 'when' for side-effects, and not to use 'if' when there is no
'else' clause.

-- 
Sean Whitton




This bug report was last modified 1 year and 224 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.