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: Emacs design and architecture. How about copy-on-write? Date: Thu, 21 Sep 2023 11:18:45 +0300 Message-ID: <83il849bx6.fsf@gnu.org> References: <83v8c7elan.fsf@gnu.org> <877conk5ny.fsf@localhost> <83ttrreeu0.fsf@gnu.org> <87bkdzeas1.fsf@localhost> <83cyyfe5l8.fsf@gnu.org> <87led2o0nb.fsf@localhost> <83ttrqcpfb.fsf@gnu.org> <877comnv4a.fsf@localhost> <83fs3ackrq.fsf@gnu.org> <99e84ae7-b3aa-a009-5cb8-a75826343196@gutov.dev> <838r92cgxp.fsf@gnu.org> <837comcam8.fsf@gnu.org> <6946e6f0-c6ef-186c-35d4-c09935c05a07@gutov.dev> <83y1h1axtq.fsf@gnu.org> <87sf79rq5o.fsf@yahoo.com> <83fs38c2yv.fsf@gnu.org> <83o7hw9ee1.fsf@gnu.org> <87il84q845.fsf@yahoo.com> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3136"; mail-complaints-to="usenet@ciao.gmane.io" Cc: dmitry@gutov.dev, yantar92@posteo.net, acm@muc.de, incal@dataswamp.org, emacs-devel@gnu.org To: Po Lu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Sep 21 10:19:49 2023 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 1qjEua-0000bn-FX for ged-emacs-devel@m.gmane-mx.org; Thu, 21 Sep 2023 10:19:48 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qjEtW-0007xz-Fw; Thu, 21 Sep 2023 04:18:42 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qjEtV-0007wt-A8 for emacs-devel@gnu.org; Thu, 21 Sep 2023 04:18:41 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qjEtT-000693-HS; Thu, 21 Sep 2023 04:18:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=FO+Y1kP2PeR0DFhNY8xnT93x04z2dpXcb4JMsZME55Q=; b=kVtdCvknAOXm 4feGAHVPyC+zwaJ0k48kTGF8mH3HN3sp+jLI3XiFBvdaGoPKViNDCTUo+VmoLpTzcJnEjyP82oQno ansu+sO3LIog2teNW+B0xO3D/JxBC+k1MYzKWzyA702wdFsSs+C4HKx4f4HEhobW3ses443h+hgSu oARUcc5SXw4qKgAO6sxqDnMwL2RTyGFDdC8XMXbaQGwTjC7jIPLX6aYk5LtYkhPEGwnt4+S0024rU c51AvmHvWPl9UO3V6cfzIz6YeN3JT+XUD4FFnvrDRhqN28okIN19WXPFzKODfuhYiWoOtxce1gzSN OlF5TRmQNe4gAxXWWr4xmA==; In-Reply-To: <87il84q845.fsf@yahoo.com> (message from Po Lu on Thu, 21 Sep 2023 15:48:58 +0800) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:310871 Archived-At: > From: Po Lu > Cc: dmitry@gutov.dev, yantar92@posteo.net, acm@muc.de, > incal@dataswamp.org, emacs-devel@gnu.org > Date: Thu, 21 Sep 2023 15:48:58 +0800 > > Eli Zaretskii writes: > > > Leaning on a key, as in the examples above, will produce input events > > at a relatively high rate (albeit usually lower than 60 per sec), each > > one of them requiring some kind of redisplay. Even leaning on C-f > > triggers redisplay at high rate. I suggest to try this in various > > non-dash-Q configurations and see how we fare in these situations. > > There's nothing outlandish in expecting an editor to keep up with > > high-rate scrolling commands, I hope you agree with that at least. > > I agree, but slow scrolling is not redisplay's fault. If I type: > > M-: (jit-lock-fontify-all) RET > > or enable c-ts-mode prior to leaning on C-v, within an Emacs session > with a 790 MiB resident set that has been executing continuously for 32 > days, then Emacs scrolls (xterm.c and xdisp.c) as fast as any other > editor on my system. Then try leaning on C-n or C-p _after_ everything is already fontified. You will still see that Emacs sometimes cannot keep up, especially if lines are not too short. You will never succeed in convincing me that our redisplay is as fast as I'd like it to be. I've seen too many proofs to the contrary. > > You can doubt all you want, but some of what they say is definitely > > related to redisplay, IMNSHO. > > Any examples? Sorry, you will have to find them yourself.