|
From: | Stefan Monnier |
Subject: | Re: Special Event: Davin reveals his own personal additions to Emacs. |
Date: | Wed, 13 Jul 2022 21:47:55 -0400 |
User-agent: | Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
> I use debugging checkpoints every second line > so the following code cannot be written: > > (defun foo () > (progn > (progn > (zip) > (message "&apple:1") > (zap) > (message "&apple:2") > (boo) > (message "&apple:3") > (bum) > (message "&apple:4")))) I do use separate lines for closing parens every once in a while, don't get me wrong. It's just an exception rather than a rule. [ Note also that inserting/removing such `message` needs to be different for the last element in any case because it determines the return value. ] >> importantly: >> - should use `with-current-buffer`. > > is that instead of (set-buffer buf)? If you compile the code, the byte-compiler will give you a warning suggesting to replace with-current-buffer for save-excursion + set-buffer. >> - should not `setq` on a global variable that doesn't have an appropriate >> namespace prefix. >> > Do you mean the following is not allowed: > > (setq apple 'banana) > > but the following code is allowed: > > (setq dmp-apple 'banana) Neither are recommended without first declaring that global variable (since that's what it is: a global variable). And global declarations need to use a proper namespace prefix. Otherwise you're at risk of stepping on someone else's toes/variables. Stefan
[Prev in Thread] | Current Thread | [Next in Thread] |