GNU bug report logs - #51661
29.0.50; What is "interactive Lisp closure"?

Previous Next

Package: emacs;

Reported by: Eli Zaretskii <eliz <at> gnu.org>

Date: Sun, 7 Nov 2021 13:38:02 UTC

Severity: wishlist

Found in version 29.0.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51661 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: bug#51661: 29.0.50; What is "interactive Lisp closure"?
Date: Sun, 07 Nov 2021 15:10:22 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

> No.  But emoji.el says this:
>
>       (insert ";; Local" " Variables:
>   ;; coding: utf-8
>   ;; version-control: never
>   ;; no-byte-compile: t
>   ;; no-update-autoloads: t
>   ;; End:
>
>   (provide 'emoji-labels)
>
> and that trips the 'compile-main' target in lisp/Makefile to think
> this file should not be byte-compiled.

D'oh.  I thought my obfuscation there was sufficient.  I'll get fixing.

> I think we should replace "closure" by "function" in the Help buffer.
> There's no need to show this to users.

Let's see...  it's this code?  I'm guessing Stefan M wrote this, so I'm
adding him to the CCs.

(defun help-fns-function-description-header (function)
  "Print a line describing FUNCTION to `standard-output'."
  (pcase-let* ((`(,_real-function ,def ,aliased ,real-def)
                (help-fns--analyze-function function))
               (file-name (find-lisp-object-file-name function (if aliased 'defun
                                                                 def)))
               (beg (if (and (or (byte-code-function-p def)
                                 (keymapp def)
                                 (memq (car-safe def) '(macro lambda closure)))
                             (stringp file-name)
                             (help-fns--autoloaded-p function file-name))
                        (concat
                         "an autoloaded " (if (commandp def)
                                              "interactive "))
                      (if (commandp def) "an interactive " "a "))))

I don't really have an opinion.  I agree that "closure"/"lambda" here is
probably more information than most users have asked for, but on the
other hand, it's a reality, so how much of the details should we hide?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




This bug report was last modified 2 years and 303 days ago.

Previous Next


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