From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: Re: Lisp primitives and their calling of the change hooks Date: Fri, 12 Jan 2018 16:14:41 +0000 Message-ID: <20180112161441.GA4008@ACM> References: <20180110194839.GC6175@ACM> <20180110210334.GD6175@ACM> <20180111173904.GA5453@ACM> <20180111194622.GB5453@ACM> <20180111212029.GC5453@ACM> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: blaine.gmane.org 1515773916 1814 195.159.176.226 (12 Jan 2018 16:18:36 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 12 Jan 2018 16:18:36 +0000 (UTC) User-Agent: Mutt/1.7.2 (2016-11-26) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jan 12 17:18:31 2018 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 1ea22E-0008Mi-Qy for ged-emacs-devel@m.gmane.org; Fri, 12 Jan 2018 17:18:26 +0100 Original-Received: from localhost ([::1]:50648 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ea24D-0004pV-BP for ged-emacs-devel@m.gmane.org; Fri, 12 Jan 2018 11:20:29 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40391) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ea240-0004m9-05 for emacs-devel@gnu.org; Fri, 12 Jan 2018 11:20:16 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ea23w-000132-QT for emacs-devel@gnu.org; Fri, 12 Jan 2018 11:20:15 -0500 Original-Received: from colin.muc.de ([193.149.48.1]:16501 helo=mail.muc.de) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1ea23w-00012G-G4 for emacs-devel@gnu.org; Fri, 12 Jan 2018 11:20:12 -0500 Original-Received: (qmail 39067 invoked by uid 3782); 12 Jan 2018 16:20:10 -0000 Original-Received: from acm.muc.de (p548C74A1.dip0.t-ipconnect.de [84.140.116.161]) by colin.muc.de (tmda-ofmipd) with ESMTP; Fri, 12 Jan 2018 17:20:10 +0100 Original-Received: (qmail 4051 invoked by uid 1000); 12 Jan 2018 16:14:41 -0000 Content-Disposition: inline In-Reply-To: X-Delivery-Agent: TMDA/1.1.12 (Macallan) X-Primary-Address: acm@muc.de X-detected-operating-system: by eggs.gnu.org: FreeBSD 9.x [fuzzy] X-Received-From: 193.149.48.1 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:221894 Archived-At: Hello, Stefan. On Thu, Jan 11, 2018 at 18:42:00 -0500, Stefan Monnier wrote: > >> Implementation flexibility, of course (which apparently Eli doesn't > >> want to take advantage of very much). > > What flexibility? > "Implementation flexibility" here means flexibility in > implementing primitives. Which is probably not terribly important. Few, if any, buffer changing primitives have been implemented in the last 20 years, and it's difficult to foresee that any new ones will be written in the next 20 years. > E.g. not needing to care about "what happens if I get an error after > I called b-c-f but before I actually modify the buffer"? So the flexibility you gain by permitting non-balancing of the change hooks is the ability to write unbalanced change hooks. Somehow, I'm a bit underwhelmed. [ .... ] > Stefan -- Alan Mackenzie (Nuremberg, Germany).