From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.bugs Subject: bug#13033: 24.3.50; regression: read-file-name-internal handles "~" wrong Date: Fri, 30 Nov 2012 14:12:14 +0100 Message-ID: <87d2yvute9.fsf@web.de> References: <7FC6A56C048B4EEAAE8EF71367793001@us.oracle.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1354281124 7614 80.91.229.3 (30 Nov 2012 13:12:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 30 Nov 2012 13:12:04 +0000 (UTC) Cc: 13033@debbugs.gnu.org To: Juanma Barranquero Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Nov 30 14:12:14 2012 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 1TeQO4-00028z-Bn for geb-bug-gnu-emacs@m.gmane.org; Fri, 30 Nov 2012 14:12:12 +0100 Original-Received: from localhost ([::1]:42933 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TeQNs-0006pZ-QY for geb-bug-gnu-emacs@m.gmane.org; Fri, 30 Nov 2012 08:12:00 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:52145) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TeQNq-0006pH-37 for bug-gnu-emacs@gnu.org; Fri, 30 Nov 2012 08:11:59 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TeQNo-0006An-Te for bug-gnu-emacs@gnu.org; Fri, 30 Nov 2012 08:11:57 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:36103) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TeQNo-0006Aj-Pl for bug-gnu-emacs@gnu.org; Fri, 30 Nov 2012 08:11:56 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1TeQPp-0003hg-TE for bug-gnu-emacs@gnu.org; Fri, 30 Nov 2012 08:14:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Michael Heerdegen Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 30 Nov 2012 13:14:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13033 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 13033-submit@debbugs.gnu.org id=B13033.135428122114197 (code B ref 13033); Fri, 30 Nov 2012 13:14:01 +0000 Original-Received: (at 13033) by debbugs.gnu.org; 30 Nov 2012 13:13:41 +0000 Original-Received: from localhost ([127.0.0.1]:46353 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TeQPU-0003gw-SQ for submit@debbugs.gnu.org; Fri, 30 Nov 2012 08:13:41 -0500 Original-Received: from mout.web.de ([212.227.17.12]:62502) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TeQPS-0003gm-So for 13033@debbugs.gnu.org; Fri, 30 Nov 2012 08:13:39 -0500 Original-Received: from drachen.dragon ([82.113.121.35]) by smtp.web.de (mrweb001) with ESMTPA (Nemesis) id 0Ma2lb-1Tvpjq3dS3-00LxNJ; Fri, 30 Nov 2012 14:11:30 +0100 In-Reply-To: (Juanma Barranquero's message of "Fri, 30 Nov 2012 00:58:29 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.90 (gnu/linux) X-Provags-ID: V02:K0:9ZG3PIETlAviyQZML2LZ/NwI9qQS2cWCB7/SVvmiCVc mqweT9OTLgFAPCi+yPXDdGGn5l9xtFMJFDot8F/Chmnj+odMrJ NUG77yO4MzIrZGNbUVIhN2UHj2TokxVq3AzGy3ZtuIsVINLauA iRQrQSr6EvLoynRtuUaSq8coF9ignZ0ymFtKUE4ML8hw8YULVi lCgvgo8JBPoFY2NNx5+8yCN4QFmFRvTmyvL2IZNyYs= X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.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:67656 Archived-At: Juanma Barranquero writes: > On Thu, Nov 29, 2012 at 10:44 PM, Drew Adams wrote: > > > In this Emacs version, > > (read-file-name-internal "~" 'file-exists-p nil) returns "~/dradams/". > > read-file-name-internal's docstring clearly says: "Internal > subroutine for `read-file-name'. Do not call this." I'm not sure if I understand the implications. I thought something like "Do not call this." is meant for the end users, but also for developers? Emacs is the "extensible ... editor". It is quite difficult for any developer to extend Emacs and contribute packages if we only allow the use of high-level public interface functions. I'm helping Drew to fix problems in Icicles. It was already hard to understand the not very lengthy documented new completion code. But if we are disallowed to use it, we had to stop to develop something like Icicles. If we start to change our habits and write Emacs in a way that essential primitives aren't allowed to be called by developers, this is the beginning of the end of extensibility. It is a bug if something like `read-file-name-internal' is not allowed to be called in third-party packages. At university I learned that writing software happens in a way that every function should have a clear specification for what it does/returns, and a documentation of this. Ok, I'm not that much a software developer that I would know if this is always necessary in that strong sense. But it would be helpful if the sources of Emacs (which is free software that may be used and modified by anyone) would be a bit more readable and reusable than the compiled byte-code. Michael.