From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alexandre Garreau Newsgroups: gmane.emacs.devel Subject: Re: sqlite3 Date: Wed, 15 Dec 2021 02:36:01 +0100 Message-ID: <30481974.kaMCLG49cH@galex-713.eu> References: <874k7ljwkr.fsf@gnus.org> <87wnk7kkxp.fsf@red-bean.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19122"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Qiantan Hong , rms@gnu.org, eric@ericabrahamsen.net, cesar.mena@gmail.com, emacs-devel@gnu.org, luangruo@yahoo.com, Alan Mackenzie , Eli Zaretskii To: Karl Fogel , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Dec 15 02:38:20 2021 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 1mxJFM-0004mV-3F for ged-emacs-devel@m.gmane-mx.org; Wed, 15 Dec 2021 02:38:20 +0100 Original-Received: from localhost ([::1]:35782 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mxJFL-0004DK-0J for ged-emacs-devel@m.gmane-mx.org; Tue, 14 Dec 2021 20:38:19 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:39662) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mxJDT-0002KH-9X for emacs-devel@gnu.org; Tue, 14 Dec 2021 20:36:23 -0500 Original-Received: from [2a00:5884:8305::1] (port=36486 helo=galex-713.eu) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mxJDQ-0000Z3-44; Tue, 14 Dec 2021 20:36:21 -0500 Original-Received: from gal by galex-713.eu with local (Exim 4.94.2) (envelope-from ) id 1mxJD8-002s2o-6f; Wed, 15 Dec 2021 02:36:02 +0100 In-Reply-To: X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:5884:8305::1 (failed) Received-SPF: pass client-ip=2a00:5884:8305::1; envelope-from=galex-713@galex-713.eu; helo=galex-713.eu X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, RDNS_NONE=0.793, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action 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" Xref: news.gmane.io gmane.emacs.devel:281961 Archived-At: Le mardo, 14-a de decembro 2021, 23-a horo kaj 1:33 CET Alan Mackenzie a=20 =C3=A9crit : >=20 >=20 > > You've defined "inessential" in a way that happens to match your > > particular usage patterns exactly. >=20 > Not at all. I was using the word correctly. In the words of Fowler, > something is essential when "we have in mind a whole that would not be > what it is to be or is or was if the part in question were wanting; the > essential thing is such that the other thing is inconceivable without > it.". Emacs without gnus would still be Emacs. Emacs without Lisp > would not. In that sense Lisp is essential to Emacs but gnus isn't. >=20 > That is an entirely different question as to what is necessary. > Windscreen wipers are necessary on a motor car. But wheels are > essential. I'm quite prepared to accept that gnus is necessary for > Emacs. I agree. > > But for others, such as myself, Gnus and Org Mode are essential :-). >=20 > As above, they're not. They're necessary. >=20 > I question the wisdom of adding more inessential stuff to the Emacs > core. To be perfectly blunt, it is bloat. I'm not saying that sqlite > shouldn't be added to core. But I am saying it should be questioned > carefully, particularly by people who are familiar with it (which I'm > not). =E2=80=A6but as said, sqlite, like *almost every* (well I doubt it=E2=80=99= s possible to=20 build emacs without ncurse support) library, is optional. So talking=20 about bloat is stretched, imho. However, I feel like the core point that many must feel and that would=20 justify all these lengthy and not always that much dense discussions is=20 that SQLite is actually very useful, very demanded, very popular, and=20 that=E2=80=99s precisely the problem. SQLite has been described, as long w= ith=20 ZLib, as =E2=80=9Cone of the two most used software on the planet=E2=80=9D,= it=E2=80=99s almost=20 everywhere, so the network effect is *extremely powerful* in their favor. I feel that this power is feared, because then the fear that a dependency=20 on sqlite *will* appear, as soon as it=E2=80=99s allowed, scares some users= =2E I=20 understand the idea of =E2=80=9Cunlispiness=E2=80=9D of it, personally, and= I indeed feel=20 we=E2=80=99re growing more akin to standard software than to the lisp world= =E2=80=A6 However I think the opposition has been very notably badly formulated,=20 with little concrete examples of the issues, or precise and concrete=20 desires (beside the =E2=80=9Cno binary files=E2=80=9D=E2=80=A6 so you can e= dit with nano? well ok=20 but you likely use emacs=E2=80=A6 we=E2=80=99re not 100% the unix philosoph= y either). I=20 think just integrating sqlite and *then* pointing out the issues may be=20 more relevant. I think the right mindset here has been best expressed by Qiantan, who=20 tried to propose something instead of just say =E2=80=9Cno=E2=80=9D. > I feel sqlite has been added to the core, merged into master, with > indecent haste, and without due reflection. This cannot be good. I > think there are knowledgeable people here who are against this novelty > and I think their expertise has been disregarded. That cannot be good > for the Emacs project. Absolutely not, given the length of the discussion it=E2=80=99s pretty much= the=20 opposite. We here have a paradox where the more we discuss it, the more=20 the people who oppose talk, and the more we have the impression the=20 opposition is strong, whatever are the arguments (even if they=E2=80=99re n= one, or=20 they=E2=80=99re stated bad), and the consequence is that paradoxally we dis= cussed=20 a lot and yet we get the impression this is haste and without discussion. = =20 It=E2=80=99s the same paradox as in =E2=80=9C[harsh criticism] =E2=80=94shu= t up=E2=80=9D looks less like=20 free expression than =E2=80=9C[politically correct soft subpart of criticis= m]=E2=80=9D=20 (without =E2=80=9Cshut up=E2=80=9D or counter-criticism). It=E2=80=99s a little like unintentional, natural-occuring FUD. Actually we won, lars added a per-file backend, so what he=E2=80=99s implem= enting=20 isn=E2=80=99t even going to cause a dependency on sqlite anymore. It=E2=80= =99s even now=20 actually fs-wide compatible with persist.el I=E2=80=99m just sad, yet again, nobody worked with nobody else to try to=20 advertise, discuss and agree the various already existing API at each=20 point of the discussion. Each person prefer their own API and well=E2=80= =A6