From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: adding namespaces to emacs-lisp (better elisp?) Date: Sat, 27 Jul 2013 09:43:23 -0700 (PDT) Message-ID: References: <874nbh2z3y.fsf@ferrier.me.uk> <871u6l2ral.fsf@ferrier.me.uk> <87siz116zo.fsf@ferrier.me.uk> <3b4713cb-5fd5-498b-b9ee-a676f0fef845@default> <87txjg1egz.fsf@informatimago.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1374943429 11730 80.91.229.3 (27 Jul 2013 16:43:49 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 27 Jul 2013 16:43:49 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier , "Pascal J. Bourguignon" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Jul 27 18:43:50 2013 Return-path: Envelope-to: ged-emacs-devel@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 1V37av-0000TM-0N for ged-emacs-devel@m.gmane.org; Sat, 27 Jul 2013 18:43:49 +0200 Original-Received: from localhost ([::1]:45161 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V37au-0001Y8-G3 for ged-emacs-devel@m.gmane.org; Sat, 27 Jul 2013 12:43:48 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60943) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V37ak-0001Xv-D2 for emacs-devel@gnu.org; Sat, 27 Jul 2013 12:43:45 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V37ad-0004VZ-0g for emacs-devel@gnu.org; Sat, 27 Jul 2013 12:43:38 -0400 Original-Received: from userp1040.oracle.com ([156.151.31.81]:22413) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V37ac-0004VL-Ou for emacs-devel@gnu.org; Sat, 27 Jul 2013 12:43:30 -0400 Original-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 r6RGhRif013184 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 27 Jul 2013 16:43:28 GMT Original-Received: from aserz7021.oracle.com (aserz7021.oracle.com [141.146.126.230]) by ucsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r6RGhOsR028781 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 27 Jul 2013 16:43:25 GMT Original-Received: from abhmt107.oracle.com (abhmt107.oracle.com [141.146.116.59]) by aserz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r6RGhOCL024143; Sat, 27 Jul 2013 16:43:24 GMT In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.7 (607090) [OL 12.0.6668.5000 (x86)] X-Source-IP: ucsinet22.oracle.com [156.151.31.94] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 156.151.31.81 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:162208 Archived-At: > > The symbol named "AA" with which I played there, was interned only in > > the package named "A", and only once (in the first call to INTERN). > > Once I've imported this symbol in the package named "B', it is visible > > there: FIND-SYMBOL and INTERN find it. But it's still the symbol named >=20 > Right, so there is a new notion of a symbol being "present" in an > obarray, whereas in Emacs there's only the notion of a symbol being > "interned" in an obarray. Yes, but it's not new ;-), though it would be new to Emacs Lisp. It is 30 years old. And it was designed after years of experimentation with different Lisp namespace ideas and implementations. On the question of "presence" vs "accessibility" (or "appearance") in a package, see my previous msg and CLTL(2), chapter Packages [*], particularly the parts about a symbol being "owned" by at most one package, its "home package". (An uninterned symbol has no home package - no package owns it.) Pascal's example makes things clear. See also the consistency rules I quoted earlier. [*] http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node111.html#XPACK