From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.bugs Subject: bug#17871: 24.4.50; (elisp) `Core Advising Primitives': interactive spec as function? Date: Sun, 29 Jun 2014 08:52:29 -0700 (PDT) Message-ID: <82178260-247b-4653-85db-d6586480419e@default> References: <400906ac-35f1-48e4-8df9-8e65b340209b@default> <87vbrjdajs.fsf@web.de> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1404057212 1436 80.91.229.3 (29 Jun 2014 15:53:32 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 29 Jun 2014 15:53:32 +0000 (UTC) Cc: 17871@debbugs.gnu.org To: Michael Heerdegen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Jun 29 17:53:25 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1X1HPw-0002XU-NW for geb-bug-gnu-emacs@m.gmane.org; Sun, 29 Jun 2014 17:53:24 +0200 Original-Received: from localhost ([::1]:58097 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X1HPw-0001wV-9v for geb-bug-gnu-emacs@m.gmane.org; Sun, 29 Jun 2014 11:53:24 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:50414) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X1HPj-0001vP-G4 for bug-gnu-emacs@gnu.org; Sun, 29 Jun 2014 11:53:20 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X1HPa-0000p3-Mi for bug-gnu-emacs@gnu.org; Sun, 29 Jun 2014 11:53:11 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:45780) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X1HPa-0000oG-Ic for bug-gnu-emacs@gnu.org; Sun, 29 Jun 2014 11:53:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1X1HPZ-0008Sw-Op for bug-gnu-emacs@gnu.org; Sun, 29 Jun 2014 11:53:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 29 Jun 2014 15:53:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 17871 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 17871-submit@debbugs.gnu.org id=B17871.140405716132504 (code B ref 17871); Sun, 29 Jun 2014 15:53:01 +0000 Original-Received: (at 17871) by debbugs.gnu.org; 29 Jun 2014 15:52:41 +0000 Original-Received: from localhost ([127.0.0.1]:36930 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1X1HPE-0008SC-Ps for submit@debbugs.gnu.org; Sun, 29 Jun 2014 11:52:41 -0400 Original-Received: from userp1040.oracle.com ([156.151.31.81]:51612) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1X1HPC-0008Rs-Uu for 17871@debbugs.gnu.org; Sun, 29 Jun 2014 11:52:40 -0400 Original-Received: from acsinet21.oracle.com (acsinet21.oracle.com [141.146.126.237]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id s5TFqWff032271 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 29 Jun 2014 15:52:32 GMT Original-Received: from aserz7021.oracle.com (aserz7021.oracle.com [141.146.126.230]) by acsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s5TFqUCZ010609 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 29 Jun 2014 15:52:30 GMT Original-Received: from abhmp0014.oracle.com (abhmp0014.oracle.com [141.146.116.20]) by aserz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s5TFqUQf010603; Sun, 29 Jun 2014 15:52:30 GMT In-Reply-To: <87vbrjdajs.fsf@web.de> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.8 (707110) [OL 12.0.6691.5000 (x86)] X-Source-IP: acsinet21.oracle.com [141.146.126.237] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:90965 Archived-At: > AFAIK using a function as interactive SPEC is only useful for functions > used as advices, so there is nothing to cross-reference. And the node > explains well how it works. What information is missing in your > opinion? The doc about interactive specs says nothing (that I have found) about the possibility of the spec being a function. On the contrary, it says that it must be a string or a sexp whose evaluation returns a list (of argument values). That *excludes* a sexp that returns a function. Even if, as you say, using a functional SPEC has only the one use case (advising), the doc about interactive specs should call out both (a) the *possibility* of a functional SPEC and (b) the fact that this *can only be used for advising*. And yes, that updated doc about interactive specs should then cross-reference the doc about using a functional interactive spec for advising - and vice versa. The doc that says what an interactive spec is and what forms it can take (e.g. node `Defining Commands' and its children, particularly `Using Interactive') currently excludes the possibility of it being a function. So it makes no sense for some other (far removed) node to now talk casually of *using* that possibility. If you cannot define an interactive spec as a function (as the doc indicates) then how can you use it as such? This is the result of introducing a new feature without properly documenting it. Hopefully this will be corrected. And that points to a second bug involved here: this new feature (the possibility of a functional interactive spec) is not even mentioned in NEWS. The addition of `nadvice.el' is mentioned, but not the change to what an interactive spec is and what forms it can take. Furthermore, there is nothing in NEWS about `defadvice' being deprecated (or whatever its official limbo status is now). Instead, there is an entry that mentions a new limitation on it: "`defadvice' does not honor the `freeze' flag and cannot advise special-forms any more." And that suggests just the opposite of its being deprecated. (And FWIW, stripping the manual of its doc for `defadvice' was quite unwise.)