From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: arthur miller Newsgroups: gmane.emacs.devel Subject: Sv: as for Calc and the math library Date: Tue, 13 Aug 2024 07:16:35 +0000 Message-ID: References: <864j7qhup6.fsf@gnu.org> <87a5hi0yts.fsf@valhala.localdomain> <86y152ge0b.fsf@gnu.org> <875xs60wmc.fsf@valhala.localdomain> <86wmklho4m.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="_000_DU2PR02MB10109E334105966D89722008696862DU2PR02MB10109eu_" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="8860"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "emacs-devel@gnu.org" To: Eli Zaretskii , Nicolas Martyanoff Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Aug 13 12:56:48 2024 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 1sdpCp-00027V-H6 for ged-emacs-devel@m.gmane-mx.org; Tue, 13 Aug 2024 12:56:48 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sdpCE-0004Hi-WC; Tue, 13 Aug 2024 06:56:11 -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 1sdllv-0007NJ-NF for emacs-devel@gnu.org; Tue, 13 Aug 2024 03:16:47 -0400 Original-Received: from mail-vi1eur02olkn20801.outbound.protection.outlook.com ([2a01:111:f403:2e07::801] helo=EUR02-VI1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sdlls-0004Kr-Px; Tue, 13 Aug 2024 03:16:47 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hdik78kXybS+o0kIpcc8BAhGmkhFp5tK0kVN8EUhnya4MDMqqoziGIWLlCazYCorCfdzR4VaRNQISRu490SG3jgFS+y8zN5QeAxDPNuGQ3e6Jd37JykkyRebDRBBxItx2xOr/UbUL4s5IelHxBNUtlSpgtV6hy+5ATeoUANE357GQttR7MtPN+QygQ0Xtz98Qy6XSkAilGUnOGnZUJZlsKj1O3ebJjBHGJ7z8onIDdq6pooXNbwZswlzIvpS9mrT5zxF3rleP7lMPPF/5UF5PvYUbhTNhOchvxroOtBmbSn9W2SRCCAtFaKxVdYy0Qew0bFtWkEdvRIOqNSA/GC1pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wkw6bZfLcGDNGrzeglqugqqnkxosWZSaGgQxd1OlY0o=; b=dFjtMmAaWFMXLxBgKohxxYL/UOia8Z1KcrBamq4347zO3gvXtXDeDWUn4XX6JZvIc/i7MQg7Zo5vdNeEj/UyDS+UsGJkHmu1N5qHbHGIPFVpQ9fM3KPWcsTCQG2IVV6gS/+GEQEB6u3SCTX1zsYlHXJmx0JnXESzqga07LfVKw5sgDRrCzkHP1bAa8mZwbr9RSL/WE9H2trb1wDbnRt0Sm/F1pzlxAkYm+EnwBMG1WbPC4Zh6CvUoFUEQRGBkATUHtj5Q2suHRnwV1A6x5UJ+8HDOLQEsfD7GDrRA5bYPdUmSptgkddXnqwC7oyu2NBf0BLLr4922Yjbmhn040ERfA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=live.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wkw6bZfLcGDNGrzeglqugqqnkxosWZSaGgQxd1OlY0o=; b=YzFbcpmt5ZIe2KTp6BEuvOvyS9QAVmO7ES48wqKAYjsnimQr8dHyWM3l4GykPnXl4zzMNkcnI4xnOhseMzQTkHr2eE+7/8gv0LFOex/ylUaDyVsMLaRFuJ4Vb70IfIiZtluh3C19+u0MU9iXvf3um41UYlwqFtQcwigrLHMPPYvKUocZSnljZyD0f/REb1OP0F/mFMPMXNjLtl6S3gYNv6pThW6cwGPEYEK32LeyKWta/4q79ZN7nbK4K9XyihDSOUCo+QQsYwYP3NM8ysrmmITfSWTtkvKOEHr2swLwHoTQbv0ConuOui+kn+HkxGr9OKElKgHUXqGsvpJIsffN6w== Original-Received: from DU2PR02MB10109.eurprd02.prod.outlook.com (2603:10a6:10:497::14) by DU0PR02MB7898.eurprd02.prod.outlook.com (2603:10a6:10:346::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7849.22; Tue, 13 Aug 2024 07:16:37 +0000 Original-Received: from DU2PR02MB10109.eurprd02.prod.outlook.com ([fe80::f3c9:d4cb:290:d487]) by DU2PR02MB10109.eurprd02.prod.outlook.com ([fe80::f3c9:d4cb:290:d487%4]) with mapi id 15.20.7849.019; Tue, 13 Aug 2024 07:16:37 +0000 Thread-Topic: as for Calc and the math library Thread-Index: AQHa7HhyCr4HNzb0tkSg9b4Ke04UmbIjdNFDgAAGX1aAAAZxKoAABt/dgAAT+BqAASgZ9A== In-Reply-To: <86wmklho4m.fsf@gnu.org> Accept-Language: sv-SE, en-US Content-Language: sv-SE x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [W89OtmEvqeRD4d7HvXRmfREUTSsi4GB8] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DU2PR02MB10109:EE_|DU0PR02MB7898:EE_ x-ms-office365-filtering-correlation-id: 108327ba-0af5-465b-f859-08dcbb67ddda x-microsoft-antispam: BCL:0; ARA:14566002|19110799003|461199028|15080799003|8060799006|15030799003|1602099012|4302099013|3412199025|440099028|102099032; x-microsoft-antispam-message-info: fqQITKM7JOfM604uvHG8g9NwAkboDFHFPP/JOwZumGFM2o5cHBFqN9XaGBfq808N/B023q4Deq35bSWocBB4syRGppYDo760rNw8izDRdo/HuVEEF3VVjvxzKbglSA0NvyETnjEM2eVrrqGVdNXTMS5hqEQxZO6PN0xjscvmRD2KaKODimme98ArVpqmNkKdz4gLeqKps9i1JJpcYfh77jMxepwSXHNeBpXCBkZBZFFBcK3peGae1z8owOKFFWGBgsppTWlbzKkhH+R6JFeTfokRqsNgtEQxj3ZKzlYULGPwcgTGYc1ksgskEEjTiN16tUjVNXb1kOcACk57WR42dMuKeuHo0qwQgjwdOy5HiyS4PtCFiq8rDZP//b+TdFGJr25EoWerVF4rFtYryOg8/yI4eQ898xFKbH4r7kltibiMWWH8jMQMj0ybASnRJUtmE85RudOnEzVzp1xfelB3Raa/C/W/G/uisP6FS64eXFfSlIgEE4hkhapeQRJUg4Ewtwv8FXJYciPDbJG9O/MiqN6IHe/RB8JR5kE+yevPsDqzaf5+k9fC48b152RTfh8mD93L7rEwao082V/OfHBZU45EqmJeclsvi3N1AUbmmrd2uvHH9kd71PvhOpI3FgsWjIGH3sj/5WC3kXe/n/P/hlKicQFs5DzqbZkCdQlYyr8TZeMP0XMMbdXud/XSb0nmop+6N+cO59KgBvTQ7vShxciFMpfHKnzrYpZDpq8j1MP9tDUdUJylESeAk1x0E dPz13STL28at+vO1u0IQW3oo9IxURawZaAZwrag4KJoKC5rQj02RXhoynrtbtfV4PUR x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?5szbhSkZ6hKs2OhhCKUCzY3OiQ7vZI+ERKOensEmnceeL2jdoZ5s1vVeMg?= =?iso-8859-1?Q?PNw3pehmSbihWA29oHlNGpfb5n9jfIFnqCINgJwj++ruhvKyukBnmTREd3?= =?iso-8859-1?Q?PG7/0gYorl/L2dKVaj7yq9sh0LqKcc78kVcc2mIV+0e9Vy1WIQP4hBAH0C?= =?iso-8859-1?Q?o+6ZtIWje4fs3UgY5kBrmeuoa9JJxpcaIEFr6cKzsMvHUaEgPXNYQPp1Lk?= =?iso-8859-1?Q?b/BKZ3+OP73R/ZU9gCqIWd67/wS8Kfy6z/AGAgDarqVHRqBXlGspX4EYvM?= =?iso-8859-1?Q?r1/r7pEz3Wy+pHcoTiprAHAHxMPFJKn7WTptS7thY4Is2YtNEmjm3Jnwjj?= =?iso-8859-1?Q?BqK36T0pWPpW3HAtn6EGnonl6a3UH7GlNr2ZK8rkznbWsNb4yvUOqZX8pA?= =?iso-8859-1?Q?tI43S7sprwH1i0+0NxSkkceKb1Is2dKM7a9J4pyFVuWzBenHwmFybdz/wQ?= =?iso-8859-1?Q?cPVDRed2sMmRL6XuZX8BpaWBZX+jGtoSW2zAPXk4JUv6Ep2/sv4b1eRCr3?= =?iso-8859-1?Q?oirXH7TqBSK35pT74rtCvNC50XCxuxOFanRYfsRmO1a5Olr79trqXYVv2a?= =?iso-8859-1?Q?w3MXsxOD/TfehwHOSiJTcjeGNMRuNhVw7WDrL4Qk5TUahWbxGR2GvV9+JH?= =?iso-8859-1?Q? X-OriginatorOrg: sct-15-20-7828-19-msonline-outlook-12d23.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DU2PR02MB10109.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 108327ba-0af5-465b-f859-08dcbb67ddda X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Aug 2024 07:16:35.7398 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR02MB7898 Received-SPF: pass client-ip=2a01:111:f403:2e07::801; envelope-from=arthur.miller@live.com; helo=EUR02-VI1-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 13 Aug 2024 06:56:10 -0400 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:322698 Archived-At: --_000_DU2PR02MB10109E334105966D89722008696862DU2PR02MB10109eu_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable > > Eli Zaretskii writes: > > > > > We made the effort to allow loading dynamic modules precisely for thi= s > > > reason: to allow free libraries to be used, but not non-free ones. Emacs users are "linking" Emacs to all kind of proprietary, non-free servic= es these days. You are reading /r/Emacs yourself and seen packages popping up targeting this or that proprietary service almost every day. Shared librari= es are no longer the staple of distributing closed source. The computing lands= cape has change a lot since 1980s/1990s. > > You absolutely can use non-free dynamic modules: enforcing the existenc= e > > of a symbol saying "I promise I'm free" does not change anything. One > > could also easily add a free dynamic module that calls non-free > > libraries. > > The need to declare that a library is free and have its sources freely > available does serve as an obstacle for non-free software. And using > non-free library with a free module is against the GPL, so it is > illegal. We cannot prevent people from lying and doing illegal > things, we can only make it harder. IMO, licenses are to restrict the usage, not arbitrary technical limitations. We could similary have a token declaration in FFI interface, w= hen loading a library, no? You are preventing people not familiar with programming who can't write a simple C wrapper to load a proprietary library, but it ain't stop any malic= ious company anyway. At the same time, the strategy is slowing down Emacs development and make it harder for talented people to actually write useful code for Emacs. It is also growing the C core unnecessary. There is a plethora of MIT licensed math libraries, with big API surfaces, well optimized for many architectures which users could bring into Emacs themselves. Anyway, Guile is the "gnu extension language", and there are no problems to expose FFI: https://www.gnu.org/software/guile/manual/html_node/Foreign-Function-Interf= ace.html How come there is no decision against loading shared objects in Guile? Ther= e was even a discussion, on this very mailing list, of Emacs core re-written in G= uile (which seems to not happen). That would auto-expose Guile FFI, but that see= med to be OK? Similar for CLisp and GCL, both are GNU projects and expose FFI. With all respect to Emacs developers, especially RMS and you, I am very gra= teful for all your work and the software you gave us, but I don't understand how = is this strategy helping Emacs and GNU development? > > It is sad to see Emacs being hamstrung and users being limited because > > someone could do something that would have no impact whatsoever with th= e > > project or any other user. > > This is a sad world for more reasons than one, but discussing that is > off-topic here. It shouldn't be Eli, because it is about Emacs development, and you know as= well that it is rather shooting us in the foot, than helping. I am honesly not trying to be PITA. I understand the subject is sensitive. = I have seen the history, and (I think) I understand why the decision was made. I won't press the subject more, but I think it may be worth to revisit the decision since times have changed. With all respect /arthur ________________________________ Fr=E5n: Eli Zaretskii Skickat: den 12 augusti 2024 15:22 Till: Nicolas Martyanoff Kopia: arthur.miller@live.com ; emacs-devel@gnu.org= =C4mne: Re: as for Calc and the math library > From: Nicolas Martyanoff > Cc: Nicolas Martyanoff , arthur.miller@live.com, > emacs-devel@gnu.org > Date: Mon, 12 Aug 2024 14:11:07 +0200 > > Eli Zaretskii writes: > > > We made the effort to allow loading dynamic modules precisely for this > > reason: to allow free libraries to be used, but not non-free ones. > > You absolutely can use non-free dynamic modules: enforcing the existence > of a symbol saying "I promise I'm free" does not change anything. One > could also easily add a free dynamic module that calls non-free > libraries. The need to declare that a library is free and have its sources freely available does serve as an obstacle for non-free software. And using non-free library with a free module is against the GPL, so it is illegal. We cannot prevent people from lying and doing illegal things, we can only make it harder. > It is sad to see Emacs being hamstrung and users being limited because > someone could do something that would have no impact whatsoever with the > project or any other user. This is a sad world for more reasons than one, but discussing that is off-topic here. --_000_DU2PR02MB10109E334105966D89722008696862DU2PR02MB10109eu_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
> > Eli Zaretskii <eliz@gnu.org> writes:
> >
> > > We made the effort to allow loading dynamic modules precisel= y for this
> > > reason: to allow free libraries to be used, but not non-free= ones.

Emacs users are "linking" Emacs to all kind of proprietary, non-f= ree services
these days. You are reading /r/Emacs yourself and seen packages popping up<= /div>
targeting this or that proprietary service almost every day. Shared librari= es
are no longer the staple of distributing closed source. The computing lands= cape
has change a lot since 1980s/1990s.

> > You absolutely can use non-free dynamic modules: enforcing the ex= istence
> > of a symbol saying "I promise I'm free" does not change= anything. One
> > could also easily add a free dynamic module that calls non-free
> > libraries.
>
> The need to declare that a library is free and have its sources freely=
> available does serve as an obstacle for non-free software.  And u= sing
> non-free library with a free module is against the GPL, so it is
> illegal.  We cannot prevent people from lying and doing illegal
> things, we can only make it harder.

IMO, licenses are to restrict the usage, not arbitrary technical
limitations. We could similary have a token declaration in FFI interface, w= hen
loading a library, no? 

You are preventing  people not familiar with programming who can't wri= te a
simple C wrapper to load a proprietary library, but it ain't stop any = malicious
company anyway. At the same time, the strategy is slowing down
Emacs development and make it harder for talented people to actually write<= /div>
useful code for Emacs. It is also growing the C core unnecessary. 

There is a plethora of MIT licensed math libraries, with big API surfaces,&= nbsp;
well optimized for many architectures which users could bring into Emacs
 themselves.

Anyway, Guile is the "gnu extension language", and there are no
problems to expose FFI:

https://www.gnu.org/software/guile/manual/html_node/Foreign-Function-Interf= ace.html

How come there is no decision against loading shared objects in Guile? Ther= e was
even a discussion, on this very mailing list, of Emacs core re-written in G= uile
(which seems to not happen). That would auto-expose Guile FFI, but that see= med
to be OK?

Similar for CLisp and GCL, both are GNU projects and expose FFI.

With all respect to Emacs developers, especially RMS and you, I am very gra= teful
for all your work and the software you gave us, but I don't understand how = is
this strategy helping Emacs and GNU development?

> > It is sad to see Emacs being hamstrung and users being limited be= cause
> > someone could do something that would have no impact whatsoever w= ith the
> > project or any other user.
>
> This is a sad world for more reasons than one, but discussing that is<= /div>
> off-topic here.

It shouldn't be Eli, because it is about Emacs development, and you know as= well
that it is rather shooting us in the foot, than helping.

I am honesly not trying to be PITA. I understand the subject is sensitive. = I have
seen the history, and (I think) I understand why the decision was made. I
won't press the subject more, but I think it may be worth to revisit the
 decision since times have changed.

With all respect
/arthur

Fr=E5n: Eli Zaretskii <e= liz@gnu.org>
Skickat: den 12 augusti 2024 15:22
Till: Nicolas Martyanoff <nicolas@n16f.net>
Kopia: arthur.miller@live.com <arthur.miller@live.com>; emacs-= devel@gnu.org <emacs-devel@gnu.org>
=C4mne: Re: as for Calc and the math library
 
> From: Nicolas Martyanoff <nicolas@n16f.net= >
> Cc: Nicolas Martyanoff <nicolas@n16f.net>,  arthur.miller@l= ive.com,
>   emacs-devel@gnu.org
> Date: Mon, 12 Aug 2024 14:11:07 +0200
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > We made the effort to allow loading dynamic modules precisely for= this
> > reason: to allow free libraries to be used, but not non-free ones= .
>
> You absolutely can use non-free dynamic modules: enforcing the existen= ce
> of a symbol saying "I promise I'm free" does not change anyt= hing. One
> could also easily add a free dynamic module that calls non-free
> libraries.

The need to declare that a library is free and have its sources freely
available does serve as an obstacle for non-free software.  And using<= br> non-free library with a free module is against the GPL, so it is
illegal.  We cannot prevent people from lying and doing illegal
things, we can only make it harder.

> It is sad to see Emacs being hamstrung and users being limited because=
> someone could do something that would have no impact whatsoever with t= he
> project or any other user.

This is a sad world for more reasons than one, but discussing that is
off-topic here.
--_000_DU2PR02MB10109E334105966D89722008696862DU2PR02MB10109eu_--