[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Is this a bug in while-let or do I missunderstand it?
From: |
Alfred M. Szmidt |
Subject: |
Re: Is this a bug in while-let or do I missunderstand it? |
Date: |
Sat, 09 Nov 2024 11:33:45 -0500 |
> If it wasn't clear, the unintuitive part is that while-let was to
> establish the local environment, so that we don't need to type:
>
> (let ((som-var (init-form)))
> (while some-var
> ... ))
But if it did it that way, the condition (init-form) would only be
evaluated once, and Iâd find *that* counterintuitive. Consider the
usual form of a while loop:
(while-let ((run (some-condition)))
(message "running"))
Do you expect that to evaluate (some-condition) once, then, if itâs
initially true, run forever?
That is how it is described in the manual, so yes (some-condition)
should only be done once, and not every iteration. See (elisp)
Conditionals .
It can be convenient to bind variables in conjunction with using a
conditional. It's often the case that you compute a value, and then
want to do something with that value if it's non-ânilâ. The
straightforward way to do that is to just write, for instance:
(let ((result1 (do-computation)))
(when result1
(let ((result2 (do-more result1)))
(when result2
(do-something result2)))))
Since this is a very common pattern, Emacs provides a number of
macros to make this easier and more readable. The above can be written
the following way instead:
... following the various with various FOO-let forms, ending with
while-let.
- Re: Is this a bug in while-let or do I missunderstand it?, (continued)
- Re: Is this a bug in while-let or do I missunderstand it?, Philip Kaludercic, 2024/11/08
- Re: Is this a bug in while-let or do I missunderstand it?, Yuri Khan, 2024/11/09
- Sv: Is this a bug in while-let or do I missunderstand it?, arthur miller, 2024/11/09
- Re: Is this a bug in while-let or do I missunderstand it?, Yuri Khan, 2024/11/09
- Sv: Is this a bug in while-let or do I missunderstand it?, arthur miller, 2024/11/09
- Re: Is this a bug in while-let or do I missunderstand it?, Yuri Khan, 2024/11/09
- Sv: Is this a bug in while-let or do I missunderstand it?, arthur miller, 2024/11/09
- Re: Is this a bug in while-let or do I missunderstand it?, Yuri Khan, 2024/11/09
- Sv: Is this a bug in while-let or do I missunderstand it?, arthur miller, 2024/11/09
- Re: Is this a bug in while-let or do I missunderstand it?,
Alfred M. Szmidt <=
- Re: Is this a bug in while-let or do I missunderstand it?, Eli Zaretskii, 2024/11/09
- Re: Is this a bug in while-let or do I missunderstand it?, Eli Zaretskii, 2024/11/09
- Re: Is this a bug in while-let or do I missunderstand it?, Andreas Schwab, 2024/11/09
- RE: [External] : Re: Is this a bug in while-let or do I missunderstand it?, Drew Adams, 2024/11/09
- Re: [External] : Re: Is this a bug in while-let or do I missunderstand it?, Alfred M. Szmidt, 2024/11/09
- Re: [External] : Re: Is this a bug in while-let or do I missunderstand it?, Jens Schmidt, 2024/11/09
- Re: [External] : Re: Is this a bug in while-let or do I missunderstand it?, Alfred M. Szmidt, 2024/11/09
- Re: [External] : Re: Is this a bug in while-let or do I missunderstand it?, Joost Kremers, 2024/11/09
- Re: [External] : Re: Is this a bug in while-let or do I missunderstand it?, Alfred M. Szmidt, 2024/11/10
- Re: Better documentation for non-binding clauses of if-let and friends, Jens Schmidt, 2024/11/10