From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.bugs Subject: bug#26712: other-window/frame versions of find-library Date: Sun, 7 May 2017 08:07:37 -0700 (PDT) Message-ID: References: <8897133a-0836-23a6-6bbe-aecc6ec8b7c8@aurox.ch> <9b566259-457c-faf2-10e1-42c084afccea@aurox.ch> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1494169692 1994 195.159.176.226 (7 May 2017 15:08:12 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 7 May 2017 15:08:12 +0000 (UTC) To: Philipp Stephani , "Charles A. Roelli" , 26712@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun May 07 17:08:06 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d7Nn4-0000Ov-IX for geb-bug-gnu-emacs@m.gmane.org; Sun, 07 May 2017 17:08:06 +0200 Original-Received: from localhost ([::1]:55833 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d7Nn9-0002dR-Py for geb-bug-gnu-emacs@m.gmane.org; Sun, 07 May 2017 11:08:11 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58159) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d7Nn3-0002dB-CW for bug-gnu-emacs@gnu.org; Sun, 07 May 2017 11:08:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d7Nn0-0000lh-4F for bug-gnu-emacs@gnu.org; Sun, 07 May 2017 11:08:05 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:34032) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1d7Nn0-0000lc-0g for bug-gnu-emacs@gnu.org; Sun, 07 May 2017 11:08:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1d7Nmz-0006Ci-Rp for bug-gnu-emacs@gnu.org; Sun, 07 May 2017 11:08: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, 07 May 2017 15:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 26712 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 26712-submit@debbugs.gnu.org id=B26712.149416967823839 (code B ref 26712); Sun, 07 May 2017 15:08:01 +0000 Original-Received: (at 26712) by debbugs.gnu.org; 7 May 2017 15:07:58 +0000 Original-Received: from localhost ([127.0.0.1]:60464 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d7Nmw-0006CR-1o for submit@debbugs.gnu.org; Sun, 07 May 2017 11:07:58 -0400 Original-Received: from userp1040.oracle.com ([156.151.31.81]:50558) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d7Nms-0006CC-OO for 26712@debbugs.gnu.org; Sun, 07 May 2017 11:07:55 -0400 Original-Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id v47F7dne023891 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 7 May 2017 15:07:39 GMT Original-Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0021.oracle.com (8.13.8/8.14.4) with ESMTP id v47F7cvN027190 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 7 May 2017 15:07:38 GMT Original-Received: from abhmp0003.oracle.com (abhmp0003.oracle.com [141.146.116.9]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id v47F7bmW009156; Sun, 7 May 2017 15:07:38 GMT In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 12.0.6767.5000 (x86)] X-Source-IP: aserv0021.oracle.com [141.146.126.233] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.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" Xref: news.gmane.org gmane.emacs.bugs:132343 Archived-At: > - Consider renaming `find-library-read' to > `find-func--read-library' to make it internal. > It's probably not intended as a public API. Why? No. Please do not consider that. Not for a moment. FWIW, I completely disagree with this point of view and approach to Emacs Lisp. Just the opposite. Unless there is some _very_ important reason why something _must_ be branded as "internal", it should not be. It may be a hard habit to break, but the notion of a "public API" is generally inappropriate for Emacs Lisp. Emacs users are also Emacs-Lisp developers. And yes, they do write their own libraries that read input. Just imagine, if an input-reading function such as `ffap-read-file-or-url', `read-file-name', `completing-read', `read-face-name', or `read-char' were declared at the outset to be "internal". What's the point of such an artificial=20 separation? In fact, I'd suggest that the library prefix be removed from `find-library-read' - just call it `read-library-name'. Elevate it; don't hide or suppress it. GNU Emacs in particular, and free software in general, have the explicit intention that users _are_ developers and that they look under the hood, tinker with engine parts, modify or make their own use of them, to create new and better things. And yes, Emacs development is driven not only by its maintainers or those most active in its C code or fixing its bugs. It is driven also, and importantly, by users, who write their own code for their own uses, and who sometimes extend that code into 3rd-party libraries. Some such development even finds its way into distributed Emacs itself - either directly, by incorporating it, or indirectly, by copy or inspiration. The latter happens more than most people, including Emacs maintainers, are aware of. Emacs would not be what it is today if it did not offer features written by its users (think Org). And this has been true of Emacs since Day One - even before GNU Emacs. So let's please stop with the tendency to view Emacs development as an internal-vs-external thing: we core developers and the code we maintain vs you "lusers" and your customizations. If we are to have _any_ "internal" functions or variables then the burden should be to demonstrate strongly why a given one really _needs_ to be internal. A priori, every single one should be "external" or, more exactly,=20 "nil-ternal". I see no good reason why a general function that reads a library name should be flagged "internal". Why should anyone be discouraged from using it in their code? Why shouldn't everyone be encouraged to use it, if they want to read a library name? This kind of not-for-the-users attitude smacks of elitism, or at least seems control-freakish, even if it is unconscious. Open the corral, please. Emacs, and all of its code, belongs to its users. There is nothing special about this function. It is useful generally. And it should be called something like `read-library-name'.