From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Daniel Colascione Newsgroups: gmane.emacs.devel Subject: Re: Proper namespaces in Elisp Date: Thu, 7 May 2020 14:56:10 -0700 Message-ID: <77c74290-a1d6-f0f1-0b6c-83c9bff76eff@dancol.org> References: <87ftcee7td.fsf@tromey.com> <87pnbgzdmx.fsf@tromey.com> <1225997b-648a-068d-7f6b-e1575477a0d0@dancol.org> <131ebfb4-4e90-1871-6f3e-de6b0030a78c@dancol.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="42521"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 Cc: Tom Tromey , Stefan Monnier , emacs-devel To: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu May 07 23:58:25 2020 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 1jWoXB-000Av4-0f for ged-emacs-devel@m.gmane-mx.org; Thu, 07 May 2020 23:58:25 +0200 Original-Received: from localhost ([::1]:45116 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jWoX9-0007u7-Rh for ged-emacs-devel@m.gmane-mx.org; Thu, 07 May 2020 17:58:24 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37312) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jWoVL-0006kg-FQ for emacs-devel@gnu.org; Thu, 07 May 2020 17:56:31 -0400 Original-Received: from dancol.org ([2600:3c01::f03c:91ff:fedf:adf3]:46308) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jWoVJ-0004gw-Gm for emacs-devel@gnu.org; Thu, 07 May 2020 17:56:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=dancol.org; s=x; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:From:References:Cc:To:Subject:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=rwSRMPQD68tMXdFf/0ptOeSvkkDmfwvmp7ExLNxanGs=; b=RvYY9CcuOON/tw3ZPfaixo6kJr G9T8qUBdWg9y8dbblUlf2KXTQhCaBvpBrg7Ap3M10+KXsGw22o07YN7O+1OncZlX+Clla9ld1mEGd 5rvfAbDwnGgC6gDhRN8QLis+tEr5Wkd2Yao+7al5QHOYMIO3xw+/tH9CYdSOZx/bvJjIbfmVsKfKf 8oxoWUDiL3PhSE/f/FOJ2OLNyNIQ4+59xhRB58vT0YOdjutjhqXaBuZxwxQQ5+/qAwD6MkjwEiwM4 sVw5pRNIOXhkMF5vAo0SJ7EGuMjw0vtaCFOTkencr2qlwYmQDn7dgYe9nLXPqg0JRO/t+QbFymMSt 2ukLQ7cg==; Original-Received: from [2604:4080:1321:9a00:cc88:bc25:b50e:59a4] by dancol.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.89) (envelope-from ) id 1jWoVG-0006ix-Aj; Thu, 07 May 2020 14:56:26 -0700 In-Reply-To: Content-Language: en-US Received-SPF: pass client-ip=2600:3c01::f03c:91ff:fedf:adf3; envelope-from=dancol@dancol.org; helo=dancol.org X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: 12 X-Spam_score: 1.2 X-Spam_bar: + X-Spam_report: (1.2 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_SBL_CSS=3.335, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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:249226 Archived-At: On 5/7/20 2:46 PM, João Távora wrote: > On Thu, May 7, 2020 at 10:10 PM Daniel Colascione > wrote: > > On 5/7/20 2:06 PM, Stefan Monnier wrote: > > > I thought your previous message was saying you don't like this > approach > > (when you said "I don't like reader magic").  Is it that I > misunderstood > > or that you don't much like the solution but think that from a > pragmatic > > point of view it's still the better option? > > I don't like reader magic in general, but I don't think of the CL > approach as being all that magical: it has uniform rules and a long > history. CL namespaces *are* reader magic all right, but it's reader > magic with which a lot of people are familiar > > > Not only that, but CL the reader itself is programmable. So it's really > _not_ "magic", it's all (hyper)spec'ed! Sure. The subject of reader macros has come up before; I used to be in favor. Regardless, symbol namespaces don't require general reader macros. > http://www.lispworks.com/documentation/HyperSpec/Body/23_a.htm > > However, Daniel, my proposal doesn't have much magic.  Is is really > dumb ;-).  Here's the gist of it (a pure elisp solution using advice, > very lightly tested) It's not that your solution is bad per se --- it's that it's a bespoke solution that solves fewer problems than the general CL mechanism. Sure, the implementation is simple, but the CL approach isn't really that hard to implement either if we decide to do it. We should prefer familiar solutions to unfamiliar ones unless the new solution comes with some compelling advantage that compensates for its novelty, and I don't see the scheme you've proposed having enough of an advantage of the CL approach (which also allows prefix aliases) to compensate for being novel.