From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: CommonLisp namespace system (was Re: adding namespaces to emacs-lisp (better elisp?)) Date: Sat, 27 Jul 2013 19:52:09 -0400 Message-ID: References: <874nbh2z3y.fsf@ferrier.me.uk> <87y58t1cih.fsf_-_@ferrier.me.uk> <87zjt9rwh7.fsf@fleche.redhat.com> <85aa2168-3fd2-42f0-b03f-74c3bc258545@default> <87ppu516qn.fsf@ferrier.me.uk> <87a9l81kvl.fsf@ferrier.me.uk> Reply-To: rms@gnu.org NNTP-Posting-Host: plane.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: ger.gmane.org 1374969135 943 80.91.229.3 (27 Jul 2013 23:52:15 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 27 Jul 2013 23:52:15 +0000 (UTC) Cc: tromey@redhat.com, drew.adams@oracle.com, emacs-devel@gnu.org To: Nic Ferrier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jul 28 01:52:18 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 1V3EHZ-0004O4-Sx for ged-emacs-devel@m.gmane.org; Sun, 28 Jul 2013 01:52:18 +0200 Original-Received: from localhost ([::1]:56623 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V3EHZ-0002HC-Hn for ged-emacs-devel@m.gmane.org; Sat, 27 Jul 2013 19:52:17 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:42507) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V3EHW-0002Fp-7Z for emacs-devel@gnu.org; Sat, 27 Jul 2013 19:52:15 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V3EHU-0005Tm-WD for emacs-devel@gnu.org; Sat, 27 Jul 2013 19:52:14 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:48354) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V3EHU-0005Th-Sb for emacs-devel@gnu.org; Sat, 27 Jul 2013 19:52:12 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1V3EHR-0003E3-IU; Sat, 27 Jul 2013 19:52:09 -0400 In-reply-to: <87a9l81kvl.fsf@ferrier.me.uk> (message from Nic Ferrier on Sat, 27 Jul 2013 09:13:02 +0100) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e 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:162215 Archived-At: [ To any NSA and FBI agents reading my email: please consider [ whether defending the US Constitution against all enemies, [ foreign or domestic, requires you to follow Snowden's example. They want to avoid having long names for symbols or name clashes for symbols. Emacs provides lots of ways to type the long names with fewer characters. That is a better solution because it doesn't complicate the meaning of code. If people don't want to have shorter names appear in the code, then I suggest a system of read-time aliases: (def-read-alias 'foo 'foo:bar) would tell the reader to replace `foo' with `foo:bar': 'foo => foo:bar `:::' could inhibit the alias processing for the symbol that follows. ':::foo => foo prin1 could detect the cases where aliasing occurs and replace the expansions with their aliases, or use `:::' to protect against aliasing. A file could load read aliases by calling `load-read-aliases'. For instance, (load-read-aliases "cl-read-aliases") Eval from files and buffers would have to handle this form specially. Compilation too. In the case of reading from a buffer, Emacs would set up the list of aliases and pass that as an argument to `eval-region'. Emacs could use that list of aliases to make various Emacs features DTRT with them. -- Dr Richard Stallman President, Free Software Foundation 51 Franklin St Boston MA 02110 USA www.fsf.org www.gnu.org Skype: No way! That's nonfree (freedom-denying) software. Use Ekiga or an ordinary phone call.