From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Question collaborative editing. Date: Wed, 30 Sep 2020 16:46:01 +0300 Message-ID: <838scrjs2u.fsf@gnu.org> References: <20200925002239.fgg3vw2nylltcoyp@Ergus> <219042AC-556D-48CC-8920-82D9BF2BD3AA@aol.com> <3A81FB67-A558-4281-8285-CDD9B01033E3@posteo.net> <1C949FC9-6023-467E-99EC-75D57B08AFB0@gnu.support> <20200929124513.fd745r2txowwbiir@Ergus> <87blho7af9.fsf@red-bean.com> <20200929215849.zg4wzytbrwx2b7ih@Ergus> <84B86B7C-81F0-42DF-894C-BF577E4B3D6E@mit.edu> <20200930001333.g6b3mqa4mdsoxiue@Ergus> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23233"; mail-complaints-to="usenet@ciao.gmane.io" Cc: qhong@mit.edu, fmfs@posteo.net, bugs@gnu.support, npostavs@gmail.com, emacs-devel@gnu.org, kfogel@red-bean.com, monnier@iro.umontreal.ca To: Ergus Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Sep 30 16:00:02 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 1kNceH-0005wK-UA for ged-emacs-devel@m.gmane-mx.org; Wed, 30 Sep 2020 16:00:01 +0200 Original-Received: from localhost ([::1]:32890 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kNceG-0002YF-OV for ged-emacs-devel@m.gmane-mx.org; Wed, 30 Sep 2020 10:00:00 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:39420) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kNcQs-0002mW-P5 for emacs-devel@gnu.org; Wed, 30 Sep 2020 09:46:11 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:33545) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kNcQs-00062y-1R; Wed, 30 Sep 2020 09:46:10 -0400 Original-Received: from [176.228.60.248] (port=1329 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kNcQq-0000oD-Vl; Wed, 30 Sep 2020 09:46:09 -0400 In-Reply-To: <20200930001333.g6b3mqa4mdsoxiue@Ergus> (message from Ergus on Wed, 30 Sep 2020 02:13:33 +0200) 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:256754 Archived-At: > Date: Wed, 30 Sep 2020 02:13:33 +0200 > From: Ergus > Cc: Karl Fogel , > Emacs developers , Fermin , > Noam Postavsky , Jean Louis , > Stefan Monnier > > I would be concerned about the performance (but I am paranoid about > Emacs performance anyway so don't worry for that). AFAIR emacs buffers > are stored in a contiguous way (I may be wrong) and in that case the > search with CRDT may be expensive. At least as it was explained here (in > the optimization section): I'm not sure I understand why you are bothered by the low-level details of buffer text implementation. You shouldn't need to manipulate it at a level lower than calling the functions implemented in insdel.c. And as I wrote elsewhere in this thread, I don't yet understand why Lisp primitives like 'insert' and 'delete-region' aren't good enough.