From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] * etc/NEWS: Document incompatibilities introduced by record types. Date: Wed, 13 Dec 2017 18:00:58 -0500 Message-ID: References: <20171211213729.41411-1-phst@google.com> Reply-To: rms@gnu.org NNTP-Posting-Host: blaine.gmane.org Content-Type: text/plain; charset=Utf-8 X-Trace: blaine.gmane.org 1513206139 18562 195.159.176.226 (13 Dec 2017 23:02:19 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 13 Dec 2017 23:02:19 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Dec 14 00:02:13 2017 Return-path: Envelope-to: ged-emacs-devel@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 1ePG2W-0004TD-6Q for ged-emacs-devel@m.gmane.org; Thu, 14 Dec 2017 00:02:12 +0100 Original-Received: from localhost ([::1]:38144 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePG2c-0007Zv-Vs for ged-emacs-devel@m.gmane.org; Wed, 13 Dec 2017 18:02:19 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48530) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePG1g-0007Yk-LT for emacs-devel@gnu.org; Wed, 13 Dec 2017 18:01:21 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePG1a-0003BY-Gb for emacs-devel@gnu.org; Wed, 13 Dec 2017 18:01:20 -0500 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:44475) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePG1L-0002un-Dp; Wed, 13 Dec 2017 18:00:59 -0500 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1ePG1K-0003qS-Ox; Wed, 13 Dec 2017 18:00:58 -0500 In-reply-to: (message from Stefan Monnier on Tue, 12 Dec 2017 15:45:59 -0500) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:221032 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. ]]] > Moving forward, I'd expect that "types" will get a more first-class > presence in Elisp, so you should be able to check if a given type name > is already used. If type names are global, that won't be enough to avoid conflicts. You must avoid conflicts with all the Lisp packages that _might_ get loaded. It's just like the situation with function definitions and global variables. That means you should use your package's naming convention for record types, just as for functions and global variables, to avoid conflicts with other packages that you don't know about. We should document this in the Emacs Lisp Reference Manual. -- Dr Richard Stallman President, Free Software Foundation (https://gnu.org, https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) Skype: No way! See https://stallman.org/skype.html.