From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 26 Feb 2013 19:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 13823@debbugs.gnu.org X-Debbugs-Original-To: Received: via spool by submit@debbugs.gnu.org id=B.136190793816324 (code B ref -1); Tue, 26 Feb 2013 19:46:02 +0000 Received: (at submit) by debbugs.gnu.org; 26 Feb 2013 19:45:38 +0000 Received: from localhost ([127.0.0.1]:51625 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAQT3-0004FE-Kc for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:45:38 -0500 Received: from eggs.gnu.org ([208.118.235.92]:35708) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAQSx-0004F1-9r for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:45:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UAQRD-0004Nn-R1 for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:43:44 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-104.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY, USER_IN_WHITELIST autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:58154) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAQRD-0004Ng-NX for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:43:43 -0500 Received: from eggs.gnu.org ([208.118.235.92]:47063) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAQRB-0001SO-Qv for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 14:43:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UAQRA-0004Mg-PF for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 14:43:41 -0500 Received: from userp1040.oracle.com ([156.151.31.81]:38110) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAQRA-0004MN-Hx for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 14:43:40 -0500 Received: from acsinet22.oracle.com (acsinet22.oracle.com [141.146.126.238]) by userp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r1QJhcF9017501 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 26 Feb 2013 19:43:39 GMT Received: from acsmt357.oracle.com (acsmt357.oracle.com [141.146.40.157]) by acsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r1QJhcqN023894 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Tue, 26 Feb 2013 19:43:38 GMT Received: from abhmt106.oracle.com (abhmt106.oracle.com [141.146.116.58]) by acsmt357.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id r1QJhc9t010361 for ; Tue, 26 Feb 2013 13:43:38 -0600 Received: from dradamslap1 (/10.159.140.20) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 26 Feb 2013 11:43:38 -0800 From: "Drew Adams" Date: Tue, 26 Feb 2013 11:43:34 -0800 Message-ID: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 Thread-Index: Ac4UWZBYevpe88nwQz245RBhEReqIw== X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 X-Source-IP: acsinet22.oracle.com [141.146.126.238] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -3.5 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.2 (------) The doc for property `pure' is inadequate and misleading. It says only this: `pure' This property is used internally to mark certain named functions for byte compiler optimization. Do not set it. In discussion of bug #13052, no good reason was given for this. The consideration of this property as somehow being "internal", and not for use by anyone programming with Emacs Lisp other than those developing core Emacs, is misguided. Users deserve a real description of what this property does, so they can determine whether and where to use it in code they develop. The same information would of course be useful to core Emacs developers - the manual serves them too. The idea of withholding such information from users is misguided. All users are potentially Emacs-Lisp users and even potentially core Emacs developers. The Elisp manual should say what such a property actually does, specifically. AFAICT, there is no difference between using this property in code distributed as part of core Emacs and using it in other, user code. Why shouldn't, for example, a user function with a definition similar to, or even identical to, that for `kbd' have `pure' applied to it, since it is applied to `kbd'? Why make users guess when `pure' might be appropriate or inappropriate? Emacs Dev really needs to get over its antiquated conception of Emacs users as something other than Emacs-Lisp developers. The world has moved beyond end users submitting batch requests at the Univac job queue. GNU should be in the vanguard of putting users first and encouraging them to dig into, understand, and modify the programs that GNU provides. Shame on GNU for not helping users by making things more transparent. In GNU Emacs 24.3.50.1 (i386-mingw-nt5.1.2600) of 2013-02-25 on ODIEONE Bzr revision: 111879 yamaoka@jpl.org-20130225224731-cv9gznq5nqf3ei7g Windowing system distributor `Microsoft Corp.', version 5.1.2600 Configured using: `configure --with-gcc (4.7) --no-opt --enable-checking --cflags -IC:/Devel/emacs/build/include --ldflags -LC:/Devel/emacs/build/lib' From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 26 Feb 2013 21:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: "Drew Adams" Cc: 13823@debbugs.gnu.org Received: via spool by 13823-submit@debbugs.gnu.org id=B13823.136191276523495 (code B ref 13823); Tue, 26 Feb 2013 21:07:02 +0000 Received: (at 13823) by debbugs.gnu.org; 26 Feb 2013 21:06:05 +0000 Received: from localhost ([127.0.0.1]:51681 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UARiv-00066u-IH for submit@debbugs.gnu.org; Tue, 26 Feb 2013 16:06:05 -0500 Received: from pruche.dit.umontreal.ca ([132.204.246.22]:57209) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UARit-00066m-5I for 13823@debbugs.gnu.org; Tue, 26 Feb 2013 16:06:04 -0500 Received: from faina.iro.umontreal.ca (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id r1QL4FjN004992; Tue, 26 Feb 2013 16:04:15 -0500 Received: by faina.iro.umontreal.ca (Postfix, from userid 20848) id EE805B40E2; Tue, 26 Feb 2013 16:04:14 -0500 (EST) From: Stefan Monnier Message-ID: References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> Date: Tue, 26 Feb 2013 16:04:14 -0500 In-Reply-To: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> (Drew Adams's message of "Tue, 26 Feb 2013 11:43:34 -0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV4504=0 X-NAI-Spam-Version: 2.2.0.9309 : core <4504> : streams <914025> : uri <1355927> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -4.2 (----) > The idea of withholding such information from users is misguided. You'd be well served to stop constantly assuming that we're intent on withholding things (and breaking and whatever else happens to you poor users). If you can come up with a good description of what it does, I'm all ears. Stefan From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: Christopher Schmidt Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 26 Feb 2013 21:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 13823@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.136191337024414 (code B ref -1); Tue, 26 Feb 2013 21:17:01 +0000 Received: (at submit) by debbugs.gnu.org; 26 Feb 2013 21:16:10 +0000 Received: from localhost ([127.0.0.1]:51696 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UARse-0006Li-S9 for submit@debbugs.gnu.org; Tue, 26 Feb 2013 16:16:09 -0500 Received: from eggs.gnu.org ([208.118.235.92]:53497) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UARsb-0006La-Ur for submit@debbugs.gnu.org; Tue, 26 Feb 2013 16:16:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UARqm-0000lD-Ke for submit@debbugs.gnu.org; Tue, 26 Feb 2013 16:14:18 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD, T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:51515) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UARqm-0000l9-G2 for submit@debbugs.gnu.org; Tue, 26 Feb 2013 16:14:12 -0500 Received: from eggs.gnu.org ([208.118.235.92]:36543) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UARqi-0006SM-Ln for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 16:14:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UARqa-0000fY-B5 for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 16:14:08 -0500 Received: from ristopher.com ([146.185.21.93]:58641 helo=saturn.ch.ristopher.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UARqa-0000f7-2f for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 16:14:00 -0500 Received: by saturn.ch.ristopher.com (Postfix, from userid 0) id B349720283; Tue, 26 Feb 2013 21:13:57 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ch.ristopher.com; s=mail; t=1361913237; bh=kJYN9xpgUgyZdeEIlgci0P/JvlarH4vzeBlvi14CdYs=; h=From:To:Subject:In-Reply-To:Message-ID:References:MIME-Version: Content-Type:Date; b=x2lkjp1piuuqKqYpGitOGxD421eo+edlRKr4z6T9zBCQf8rLKCrfN5JY/8Wy086j1 yzHwuvaDT8F92pM4fN28H2+7OEKWB1iiDVWo41ZpxGl9gxdPJVDaHRnRE0vXOZnJVX nefe9+sndOIUaphFOr5MkNGjipPX8DM8FZ5guKxg= From: Christopher Schmidt In-Reply-To: (Stefan Monnier's message of "Tue, 26 Feb 2013 16:04:14 -0500") Message-ID: <87zjyq6an8@ch.ristopher.com> References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> Mail-Followup-To: bug-gnu-emacs@gnu.org MIME-Version: 1.0 Content-Type: text/plain Date: Tue, 26 Feb 2013 21:13:57 +0000 (GMT) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -4.2 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.0 (-----) Stefan Monnier writes: > If you can come up with a good description of what it does, I'm > all ears. There is a nice description of pure in byte-opt.el ;; pure functions are side-effect free functions whose values depend ;; only on their arguments. For these functions, calls with constant ;; arguments can be evaluated at compile time. This may shift run ;; time errors to compile time. Christopher (<- who would like to see pure documented) From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 26 Feb 2013 21:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: "'Stefan Monnier'" Cc: 13823@debbugs.gnu.org Received: via spool by 13823-submit@debbugs.gnu.org id=B13823.136191589728278 (code B ref 13823); Tue, 26 Feb 2013 21:59:02 +0000 Received: (at 13823) by debbugs.gnu.org; 26 Feb 2013 21:58:17 +0000 Received: from localhost ([127.0.0.1]:51735 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UASXO-0007Lz-5u for submit@debbugs.gnu.org; Tue, 26 Feb 2013 16:58:17 -0500 Received: from userp1040.oracle.com ([156.151.31.81]:44947) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UASXK-0007Lr-Dv for 13823@debbugs.gnu.org; Tue, 26 Feb 2013 16:58:11 -0500 Received: from acsinet21.oracle.com (acsinet21.oracle.com [141.146.126.237]) by userp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r1QLuL7D006400 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 26 Feb 2013 21:56:22 GMT Received: from acsmt356.oracle.com (acsmt356.oracle.com [141.146.40.156]) by acsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r1QLuKWC014018 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 26 Feb 2013 21:56:21 GMT Received: from abhmt109.oracle.com (abhmt109.oracle.com [141.146.116.61]) by acsmt356.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id r1QLuKnw008191; Tue, 26 Feb 2013 15:56:20 -0600 Received: from dradamslap1 (/10.159.140.20) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 26 Feb 2013 13:56:20 -0800 From: "Drew Adams" References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> Date: Tue, 26 Feb 2013 13:56:16 -0800 Message-ID: <3AF2F1A8C17548BCA8F85106499E18D2@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: Thread-Index: Ac4UZNj7hq+xMd3BQyelo+dKXP27wAAABMQw X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 X-Source-IP: acsinet21.oracle.com [141.146.126.237] X-Spam-Score: -2.2 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -4.9 (----) > If you can come up with a good description of what > it does, I'm all ears. You presumably know the content to be communicated - just what effect property `put' has, when to use it, any gotchas or other things to be aware of etc. I do not really know. I'm asking for precisely that info. If you tell me the content - what `put' does, I will be more than glad to offer help with the wording. >From the bug #13052 thread, it seems that this might be the effect and condition of use, but please correct if wrong: Non-nil means that when the symbol's function is called with only constant arguments the byte-compiler evaluates the call and replaces it in the compiled code by its value.[*] This is similar to replacing a macro call by the evaluation of its expansion. Use `put' only when the function has no side effects and every evaluation of that function call returns the same value regardless of the evaluation context. [*] Does the byte-compiler always do this when the condition is satisfied? Or does non-nil `pure' mean only that it might do this? Is the above description correct? Should something else be said? Perhaps the condition is too strong? Is there a use case for a function that might not give the same result in all contexts, but for which the only relevant/intended context is byte-compilation? From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Feb 2013 01:27:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: "Drew Adams" Cc: 13823@debbugs.gnu.org Received: via spool by 13823-submit@debbugs.gnu.org id=B13823.136192838714452 (code B ref 13823); Wed, 27 Feb 2013 01:27:03 +0000 Received: (at 13823) by debbugs.gnu.org; 27 Feb 2013 01:26:27 +0000 Received: from localhost ([127.0.0.1]:51987 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAVms-0003l3-SC for submit@debbugs.gnu.org; Tue, 26 Feb 2013 20:26:27 -0500 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:6481) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAVmq-0003kw-QV for 13823@debbugs.gnu.org; Tue, 26 Feb 2013 20:26:25 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av8EABK/CFFFxKJt/2dsb2JhbABEuzWDWRdzgh4BAQQBViMQCzQSFBgNJIgeBrEfkA6RCgOIYZwZgV6DFQ X-IPAS-Result: Av8EABK/CFFFxKJt/2dsb2JhbABEuzWDWRdzgh4BAQQBViMQCzQSFBgNJIgeBrEfkA6RCgOIYZwZgV6DFQ X-IronPort-AV: E=Sophos;i="4.84,565,1355115600"; d="scan'208";a="2562943" Received: from 69-196-162-109.dsl.teksavvy.com (HELO pastel.home) ([69.196.162.109]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 26 Feb 2013 20:24:35 -0500 Received: by pastel.home (Postfix, from userid 20848) id 14FDC6CF3D; Tue, 26 Feb 2013 20:24:36 -0500 (EST) From: Stefan Monnier Message-ID: References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> <3AF2F1A8C17548BCA8F85106499E18D2@us.oracle.com> Date: Tue, 26 Feb 2013 20:24:36 -0500 In-Reply-To: <3AF2F1A8C17548BCA8F85106499E18D2@us.oracle.com> (Drew Adams's message of "Tue, 26 Feb 2013 13:56:16 -0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.8 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.5 (/) >> If you can come up with a good description of what it does, I'm all ears. > You presumably know the content to be communicated - just what effect > property `put' has, when to use it, any gotchas or other things to be > aware of etc. That's a wrong presumption. Rather than presuming, please stick to the facts and go straight to the point. E.g. ask "Could we have it be properly documented, please?". Stefan From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Feb 2013 01:29:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 13823@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.136192854014689 (code B ref -1); Wed, 27 Feb 2013 01:29:04 +0000 Received: (at submit) by debbugs.gnu.org; 27 Feb 2013 01:29:00 +0000 Received: from localhost ([127.0.0.1]:52000 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAVpM-0003os-HZ for submit@debbugs.gnu.org; Tue, 26 Feb 2013 20:29:00 -0500 Received: from eggs.gnu.org ([208.118.235.92]:59684) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAVpJ-0003od-Vr for submit@debbugs.gnu.org; Tue, 26 Feb 2013 20:28:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UAVnZ-0005cg-D0 for submit@debbugs.gnu.org; Tue, 26 Feb 2013 20:27:10 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-102.6 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_LOW, USER_IN_WHITELIST autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:59375) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAVnZ-0005cc-9Z for submit@debbugs.gnu.org; Tue, 26 Feb 2013 20:27:09 -0500 Received: from eggs.gnu.org ([208.118.235.92]:42802) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAVnX-0007hI-HJ for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 20:27:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UAVnW-0005bi-41 for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 20:27:07 -0500 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:36934) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAVnV-0005bb-W7 for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 20:27:06 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av8EABK/CFFFxKJt/2dsb2JhbABEuzWDWRdzgh4BAQQBVjMLNBIUGA2IQgaxH5AOjWGDKQOIYZwZgV6DFQ X-IPAS-Result: Av8EABK/CFFFxKJt/2dsb2JhbABEuzWDWRdzgh4BAQQBVjMLNBIUGA2IQgaxH5AOjWGDKQOIYZwZgV6DFQ X-IronPort-AV: E=Sophos;i="4.84,565,1355115600"; d="scan'208";a="2563056" Received: from 69-196-162-109.dsl.teksavvy.com (HELO pastel.home) ([69.196.162.109]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 26 Feb 2013 20:27:04 -0500 Received: by pastel.home (Postfix, from userid 20848) id 301356CF3D; Tue, 26 Feb 2013 20:27:05 -0500 (EST) From: Stefan Monnier Message-ID: References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> <87zjyq6an8@ch.ristopher.com> Date: Tue, 26 Feb 2013 20:27:05 -0500 In-Reply-To: <87zjyq6an8@ch.ristopher.com> (Christopher Schmidt's message of "Tue, 26 Feb 2013 21:13:57 +0000 (GMT)") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -4.3 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.2 (------) >> If you can come up with a good description of what it does, I'm all ears. > There is a nice description of pure in byte-opt.el > ;; pure functions are side-effect free functions whose values depend > ;; only on their arguments. For these functions, calls with constant > ;; arguments can be evaluated at compile time. This may shift run > ;; time errors to compile time. Sounds OK. Feel free to put it in. Stefan From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Feb 2013 04:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: "'Stefan Monnier'" Cc: 13823@debbugs.gnu.org Received: via spool by 13823-submit@debbugs.gnu.org id=B13823.136194004931735 (code B ref 13823); Wed, 27 Feb 2013 04:41:01 +0000 Received: (at 13823) by debbugs.gnu.org; 27 Feb 2013 04:40:49 +0000 Received: from localhost ([127.0.0.1]:52180 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAYoy-0008Fo-Q1 for submit@debbugs.gnu.org; Tue, 26 Feb 2013 23:40:49 -0500 Received: from userp1040.oracle.com ([156.151.31.81]:36592) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAYow-0008Ff-1U for 13823@debbugs.gnu.org; Tue, 26 Feb 2013 23:40:47 -0500 Received: from ucsinet22.oracle.com (ucsinet22.oracle.com [156.151.31.94]) by userp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r1R4ctnd016766 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 27 Feb 2013 04:38:56 GMT Received: from acsmt358.oracle.com (acsmt358.oracle.com [141.146.40.158]) by ucsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r1R4csUQ001518 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 27 Feb 2013 04:38:55 GMT Received: from abhmt107.oracle.com (abhmt107.oracle.com [141.146.116.59]) by acsmt358.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id r1R4csbm007614; Tue, 26 Feb 2013 22:38:54 -0600 Received: from dradamslap1 (/10.159.140.20) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 26 Feb 2013 20:38:54 -0800 From: "Drew Adams" References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com><3AF2F1A8C17548BCA8F85106499E18D2@us.oracle.com> Date: Tue, 26 Feb 2013 20:38:49 -0800 Message-ID: <44067C263DF1446CAD9EEC961BD7CC7F@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: Thread-Index: Ac4UiTVx3lpg5n9WT9+9NyCBPvj0igAFnPPA X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 X-Source-IP: ucsinet22.oracle.com [156.151.31.94] X-Spam-Score: -2.2 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.0 (---) > go straight to the point. E.g. ask "Could we have it > be properly documented, please?". Oh, that's just what I did, in bug #13052: >> How about documenting this `pure' property? and later in that same thread: >> In any case, this property should be documented. Another user agreed and added that "We can be happy that [Emacs Dev does not just tell users] `Do not use this'." To which, ironically, the response was in fact to "document" it by just telling users "Do not set it." Bug #13823 is an attempt to get beyond that reaction constructively. You asked me to come up with a description of what it does. I proposed some text based on my understanding, inviting correction. Dunno whether you even read it. Your response was to tell me I should not assume you know more about this than I, and that I should anyway just ask that it be properly documented. So one more time: "Could we have it be properly documented, please?" It is the only standard symbol property listed in (elisp) `Standard Properties' about which we say virtually nothing and for which there is no cross reference to a section that covers it. From unknown Tue Jun 17 01:48:46 2025 X-Loop: help-debbugs@gnu.org Subject: bug#13823: 24.3.50; Elisp manual description of property `pure' Resent-From: Richard Stallman Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Feb 2013 14:30:10 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13823 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: 13823@debbugs.gnu.org, drew.adams@oracle.com Reply-To: rms@gnu.org Received: via spool by 13823-submit@debbugs.gnu.org id=B13823.136197538922873 (code B ref 13823); Wed, 27 Feb 2013 14:30:10 +0000 Received: (at 13823) by debbugs.gnu.org; 27 Feb 2013 14:29:49 +0000 Received: from localhost ([127.0.0.1]:52949 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAi0y-0005wr-8L for submit@debbugs.gnu.org; Wed, 27 Feb 2013 09:29:49 -0500 Received: from fencepost.gnu.org ([208.118.235.10]:57578) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAi0q-0005we-47 for 13823@debbugs.gnu.org; Wed, 27 Feb 2013 09:29:44 -0500 Received: from rms by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1UAhz1-0000jR-05; Wed, 27 Feb 2013 09:27:47 -0500 Date: Wed, 27 Feb 2013 09:27:47 -0500 Message-Id: Content-Type: text/plain; charset=ISO-8859-15 From: Richard Stallman In-reply-to: (message from Stefan Monnier on Tue, 26 Feb 2013 16:04:14 -0500) References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> X-Spam-Score: -4.9 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.7 (-----) Since the Emacs source code is published free software, it is impossible for us to "withhold" any information about it. -- Dr Richard Stallman President, Free Software Foundation 51 Franklin St Boston MA 02110 USA www.fsf.org www.gnu.org Skype: No way! That's nonfree (freedom-denying) software. Use Ekiga or an ordinary phone call From unknown Tue Jun 17 01:48:46 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.428 (Entity 5.428) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: "Drew Adams" Subject: bug#13823: closed (Re: bug#13823: 24.3.50; Elisp manual description of property `pure') Message-ID: References: <87ip4qklu4@ch.ristopher.com> <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> X-Gnu-PR-Message: they-closed 13823 X-Gnu-PR-Package: emacs Reply-To: 13823@debbugs.gnu.org Date: Sun, 17 Mar 2013 16:57:03 +0000 Content-Type: multipart/mixed; boundary="----------=_1363539423-23058-1" This is a multi-part message in MIME format... ------------=_1363539423-23058-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #13823: 24.3.50; Elisp manual description of property `pure' which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 13823@debbugs.gnu.org. --=20 13823: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D13823 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1363539423-23058-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 13823-done) by debbugs.gnu.org; 17 Mar 2013 16:56:41 +0000 Received: from localhost ([127.0.0.1]:60204 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UHGsv-0005zL-1w for submit@debbugs.gnu.org; Sun, 17 Mar 2013 12:56:39 -0400 Received: from ristopher.com ([146.185.21.93]:45504 helo=saturn.ch.ristopher.com) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UHGsr-0005z9-Cl for 13823-done@debbugs.gnu.org; Sun, 17 Mar 2013 12:56:34 -0400 Received: by saturn.ch.ristopher.com (Postfix, from userid 0) id CB43C20E05; Sun, 17 Mar 2013 16:55:01 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ch.ristopher.com; s=mail; t=1363539301; bh=kWZXWny9POCVCDGSdqycMbtSzZqv53T9L905ZkMRUEQ=; h=From:To:Subject:In-Reply-To:Message-ID:References:MIME-Version: Content-Type:Date; b=Yxl71LL4xM3sSSD5CsFEOJDYqnPAt5U6BVd8U86cylbH7SPXisLr+qRUmdQtA5Ya9 UX7+EpXJS2vg8ZvGsLjJroySSdUWpw/WJsTXCn+JTY4z2cuDuyseKouKmfdSCDF7r/ 6m8NSbs4MI6BEQ0YVr2MVRqRECHVRhbmQSG408+8= From: Christopher Schmidt To: 13823-done@debbugs.gnu.org Subject: Re: bug#13823: 24.3.50; Elisp manual description of property `pure' In-Reply-To: (Stefan Monnier's message of "Tue, 26 Feb 2013 20:27:05 -0500") Message-ID: <87ip4qklu4@ch.ristopher.com> References: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> <87zjyq6an8@ch.ristopher.com> MIME-Version: 1.0 Content-Type: text/plain Date: Sun, 17 Mar 2013 16:55:01 +0000 (GMT) X-Spam-Score: -1.7 (-) X-Debbugs-Envelope-To: 13823-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.5 (--) Stefan Monnier writes: > Sounds OK. Feel free to put it in. I did this, r112066. Christopher ------------=_1363539423-23058-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 26 Feb 2013 19:45:38 +0000 Received: from localhost ([127.0.0.1]:51625 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAQT3-0004FE-Kc for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:45:38 -0500 Received: from eggs.gnu.org ([208.118.235.92]:35708) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UAQSx-0004F1-9r for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:45:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UAQRD-0004Nn-R1 for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:43:44 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-104.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY, USER_IN_WHITELIST autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:58154) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAQRD-0004Ng-NX for submit@debbugs.gnu.org; Tue, 26 Feb 2013 14:43:43 -0500 Received: from eggs.gnu.org ([208.118.235.92]:47063) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAQRB-0001SO-Qv for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 14:43:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UAQRA-0004Mg-PF for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 14:43:41 -0500 Received: from userp1040.oracle.com ([156.151.31.81]:38110) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UAQRA-0004MN-Hx for bug-gnu-emacs@gnu.org; Tue, 26 Feb 2013 14:43:40 -0500 Received: from acsinet22.oracle.com (acsinet22.oracle.com [141.146.126.238]) by userp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r1QJhcF9017501 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 26 Feb 2013 19:43:39 GMT Received: from acsmt357.oracle.com (acsmt357.oracle.com [141.146.40.157]) by acsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r1QJhcqN023894 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Tue, 26 Feb 2013 19:43:38 GMT Received: from abhmt106.oracle.com (abhmt106.oracle.com [141.146.116.58]) by acsmt357.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id r1QJhc9t010361 for ; Tue, 26 Feb 2013 13:43:38 -0600 Received: from dradamslap1 (/10.159.140.20) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 26 Feb 2013 11:43:38 -0800 From: "Drew Adams" To: Subject: 24.3.50; Elisp manual description of property `pure' Date: Tue, 26 Feb 2013 11:43:34 -0800 Message-ID: <7C809B3AAAD746858CBC43BE77242FAA@us.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 Thread-Index: Ac4UWZBYevpe88nwQz245RBhEReqIw== X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 X-Source-IP: acsinet22.oracle.com [141.146.126.238] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -3.5 (---) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.2 (------) The doc for property `pure' is inadequate and misleading. It says only this: `pure' This property is used internally to mark certain named functions for byte compiler optimization. Do not set it. In discussion of bug #13052, no good reason was given for this. The consideration of this property as somehow being "internal", and not for use by anyone programming with Emacs Lisp other than those developing core Emacs, is misguided. Users deserve a real description of what this property does, so they can determine whether and where to use it in code they develop. The same information would of course be useful to core Emacs developers - the manual serves them too. The idea of withholding such information from users is misguided. All users are potentially Emacs-Lisp users and even potentially core Emacs developers. The Elisp manual should say what such a property actually does, specifically. AFAICT, there is no difference between using this property in code distributed as part of core Emacs and using it in other, user code. Why shouldn't, for example, a user function with a definition similar to, or even identical to, that for `kbd' have `pure' applied to it, since it is applied to `kbd'? Why make users guess when `pure' might be appropriate or inappropriate? Emacs Dev really needs to get over its antiquated conception of Emacs users as something other than Emacs-Lisp developers. The world has moved beyond end users submitting batch requests at the Univac job queue. GNU should be in the vanguard of putting users first and encouraging them to dig into, understand, and modify the programs that GNU provides. Shame on GNU for not helping users by making things more transparent. In GNU Emacs 24.3.50.1 (i386-mingw-nt5.1.2600) of 2013-02-25 on ODIEONE Bzr revision: 111879 yamaoka@jpl.org-20130225224731-cv9gznq5nqf3ei7g Windowing system distributor `Microsoft Corp.', version 5.1.2600 Configured using: `configure --with-gcc (4.7) --no-opt --enable-checking --cflags -IC:/Devel/emacs/build/include --ldflags -LC:/Devel/emacs/build/lib' ------------=_1363539423-23058-1--