From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: master c8a2af3037 1/3: Add new function function-alias-p Date: Sat, 15 Jan 2022 09:39:09 -0500 Message-ID: References: <164206376686.342.13318619183595442698@vcs2.savannah.gnu.org> <20220113084927.707D2C0DA30@vcs2.savannah.gnu.org> <877db2vkrg.fsf@gnus.org> <87ilulmmy0.fsf@gnus.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19230"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Jan 15 15:41:24 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1n8kF9-0004mp-Qr for ged-emacs-devel@m.gmane-mx.org; Sat, 15 Jan 2022 15:41:23 +0100 Original-Received: from localhost ([::1]:37608 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n8kF8-0002UW-Im for ged-emacs-devel@m.gmane-mx.org; Sat, 15 Jan 2022 09:41:22 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:45548) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n8kDA-0001lC-Ud for emacs-devel@gnu.org; Sat, 15 Jan 2022 09:39:20 -0500 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:57048) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n8kD8-0005Sj-89 for emacs-devel@gnu.org; Sat, 15 Jan 2022 09:39:20 -0500 Original-Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 71F23440795; Sat, 15 Jan 2022 09:39:16 -0500 (EST) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id DE369440C0B; Sat, 15 Jan 2022 09:39:10 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1642257550; bh=CgD5zVKUAGH31Gjm5SGlt8qc+iTYBMjbEdGHlxIkLQU=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=QZVGxUBjOUKuC07UBFi3q2uJ9cmbYG7bBAvKtYSmkECDnb2AupE/m67/lJYmJGILo gcAQTKhZIB257OvQzxIcFiRVQI4j9l/pAmqAr3/WnULfZ2OLl3pB9rwsb4zBkEApQp t95v1Unp8pN/LRs7yvybUUlDJM667SE9KjafVSmHuIgRzNyOpzwJfeBduqhhqVecNA FwrnAp85iqkO1iNhnkk/2tq8iIoR5rHA8qggFfveMH0P4NzkXAXXhzqM4yP9Z99uB8 0HIwYGkFx2+662WAmQYF2oS9Jt9i5+/TUl0k/qoVbMvy8iXTqsONIqH9fCxaWjCXaO fYfZtHH0QchMA== Original-Received: from pastel (unknown [216.154.30.173]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 7A333120419; Sat, 15 Jan 2022 09:39:10 -0500 (EST) In-Reply-To: <87ilulmmy0.fsf@gnus.org> (Lars Ingebrigtsen's message of "Sat, 15 Jan 2022 09:18:31 +0100") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:284777 Archived-At: >>> An the semantics would be kinda odd -- in the non-alias case, we'd still >>> return nil, right? >> No, I was thinking of returning the content of `symbol-function`. >> So, it basically returns a more explicit info than `indirect-function`. > My feeling is that people that want to get at the function object will > use `indirect-function'. Callers that want both the intermediate chain > and the final object are pretty rare, I think. Could be. I was thinking of cases like `interactive-form`, `commandp`, and `documentation` where we usually want to fetch the info off of the function object, but we need to check some symbol property along the way in case it shadows the function's own value. These functions currently start with `indirect-function` to rule out the presence of cycles and then proceed to loop through the aliases (if any). Stefan