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: Re: Info: No GIL Multithreading strat for Python Date: Mon, 04 Mar 2024 16:55:17 +0100 Message-ID: References: <86bk7vnwbi.fsf@gnu.org> <86zfvfm7qr.fsf@gnu.org> <86r0gqmajp.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="28991"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Mar 04 17:48:38 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 1rhBUT-0007Fo-AQ for ged-emacs-devel@m.gmane-mx.org; Mon, 04 Mar 2024 17:48:37 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rhBTi-0002kX-U6; Mon, 04 Mar 2024 11:47:50 -0500 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 1rhAez-0008Uv-NN for emacs-devel@gnu.org; Mon, 04 Mar 2024 10:55:25 -0500 Original-Received: from mail-dbaeur03olkn2069.outbound.protection.outlook.com ([40.92.58.69] helo=EUR03-DBA-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 1rhAew-0003uA-FO; Mon, 04 Mar 2024 10:55:25 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M1Hsgz8yeNIrSVQratALOUXgdxvn2a7+FTkUbCavPH7TVT7uZACiSPf2NVLh7EKSxYTdiRmI0AYgPnjK8c249FjC00FzsBGYQ/QBMJZZkIF89GIUGfhEtfYn9inF3mM6d4GKX8JjRDwkAw9XJV7hvJ+WkgM+RzlmZnul4lT52ct7UOPFfm6rU0riPSRtBUDMkk6PwaecYVthq8o2CtTKwfEYhknZmduG+FA1P2Ei0fGKkSBT8biBZltZEuKVryMD/MTID58LlbtJ0WYeyF+yjpeuHsq1C5SkwCdvn5WPCslaHr5MtAYSxhC9sKNwj3DdRnTHLKJi2pnLl4+eMwR+Xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NGx4ht2wXTtwE7vYIK1ioDqHoK6+esT3Z6CoKc7JAvc=; b=b33zFtNJxM/RRg7HB8CVKn6NsL7pzwYik6uK/vcK+yj+7iB6xTfcIQbvVSMzQ+kYr1WwiNCvXuPTzJZ+X9ff+5Lh0aCOo6Q3p73nHAd/fvv4gxfG9R04mNJo1MhW4vJhWmfly7C46IW/nx3PlAXvpBWF2xZzjgJ386i0pF+D3o+t8uZfiMKesEmgkroKBttkFH5gDR0LmOymKcLDCwrHq53f1Iw6eRYNlYiAhwcnlNw1711GY9SIgQ8sj80oBgxxjONED4ZpFJo0zWFjo1rWeLUe1kREGSxjavn2PSXwOKTGDzK7BzE4CweYuTARMvmuVm1Su/cqmwk2mM7oFHbhlQ== 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=NGx4ht2wXTtwE7vYIK1ioDqHoK6+esT3Z6CoKc7JAvc=; b=DCQnkCB/q8TKSz2I1GnRYDAJaOqDfmnAFOTqFhij3ret8+TLFoSFfUNvZeQTK6mfrimiNPFDEw2LMjZCHUZhCHvphpZCC7A1N/IfAfiURIpisiHUjzTZHWUo3tyNucDWl/SoMVM/CyJXdoUAr2NFMWEWx2pTHo8PeOhPdpUcO6c6U0e8Yvt/RuW+X1rYPSbvGeFupuKRCOYINiefpzwVcGkYL3OyTmdFoelelwGaGbtTMTeS1gIeVDXVzIK2oj7wZpUSzyT4Z4JKwLpC49Uq55yum0pTkloVB6zjM1dUugEip/Rh+skqENWp/YpWPphpLAljn4M4yF/drfUvkd5sxw== Original-Received: from DU2PR02MB10109.eurprd02.prod.outlook.com (2603:10a6:10:497::14) by PA4PR02MB8195.eurprd02.prod.outlook.com (2603:10a6:102:260::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7339.38; Mon, 4 Mar 2024 15:55:19 +0000 Original-Received: from DU2PR02MB10109.eurprd02.prod.outlook.com ([fe80::9549:47fe:660e:4d02]) by DU2PR02MB10109.eurprd02.prod.outlook.com ([fe80::9549:47fe:660e:4d02%4]) with mapi id 15.20.7339.035; Mon, 4 Mar 2024 15:55:19 +0000 In-Reply-To: <86r0gqmajp.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 04 Mar 2024 07:44:27 -0500") X-TMN: [dXCqIqJAHZjtpohHvomUr3XApLJjPkWcOAcdAZSMeW8=] X-ClientProxiedBy: MM0P280CA0108.SWEP280.PROD.OUTLOOK.COM (2603:10a6:190:9::9) To DU2PR02MB10109.eurprd02.prod.outlook.com (2603:10a6:10:497::14) X-Microsoft-Original-Message-ID: <87edcq9el6.fsf@live.com> X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR02MB10109:EE_|PA4PR02MB8195:EE_ X-MS-Office365-Filtering-Correlation-Id: f4d39354-295c-4bf4-31f8-08dc3c637dc3 X-MS-Exchange-SLBlob-MailProps: quCBMN2EvO9jQf2BBpFaKEGBeEuTTpzwTUlQShlEIDvCBCleYVGFoJU7jTszyT9HhmTmhai0+pr5ZTlwHOuq113t7c+OQKJPCkdwZZ6pcyVYmR+8uGB7rImp2wq0T3VS+eFpXcRu5YarCjLGYVBMLvd/YlHrMgoqFmx5jPKRAfBewvWlnXWo0nITtXs7ZkgrPapAd4E7N2+DMzKBlApAXvUdOmpZf5K+sj1rPukefkzLorNNkmp149sfYdNrKtd2bp78jj3OZwci02yd1Ox0Tk8uRymDvADVuKRy2IP57IIcoSycEzHcfE22z2yWIrUEGTSFLVfa5cHM3W2T09BaSTRs0xvhvnhBAlkHD0CVNf8W7tmp00rHaCNgULvb5Zzn0UTWwOu3T+u/Cy6fAoJQjiWISN9v2AU620JDRnCx5qKyestpXKgWSBu+25778pJiDN0XjNV6zrvXDhmvgL8WVHaUQUa8YDvu1q7PJBQB8qDk4XHzpu/DaupRfkqYwjGQOGZUniYcmRQt/Fu1DxX3CN5Chjs2IyFr3fZpfYxji4Rs4ZolOrllmNSRL+EqsumbQFtwl5y9Tn7RC6CjPIWb/9M4LFekOlYIonlFaNgMlwOAKvlzPUizoTm5onjxHXl6meqtclofLsL9x8KZgfcuZDhlGJSHM/iGcEMyzp4fpNAggN/xOrLhbc9UkPmacieQIf2ph8Qh/UYh1bsWXMDENg== X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aeMF0eoOLY9xH1zVNjMa5BkoYAiwWxGqhXGBVYNuTg13yyodBJD2pv0MJRFrlIkdF5DKWRDzgxUZfJboTV9M5Pvj2KHdwxA60yzSBGuI0VYAGPov4owOzRj8pRZBqYpxtzlPSnB2TGH4HiH4a4EJfPGPsYALwhiZaw4Lqt3oADan9la/8bAZ5Mg+SFr/0eHLyMvqT7pJKUy2ktdpDn0kipx7EJBVTYBzY5IqAOa5CbyMXhB47D4w9/t3cW3KcEH6Z5fjnWcOJ8qpNkliuoSGVkF85RWN4RtCBImkyhSvCul1bkFAPSgbxNRYLMogfrWvSwrA1LnYCuvZvc+grdHH4Qb6NCJMstXfw7kYW/pGG1tSSCa3619qBu9cF9dR4TiymZQ2Xr+jOd1sAORSBvU2ENZBFxgEq7V6w7k+0x0/d1UIRKRQvAhNuPipgXXrAUwOny7FRi4tBYAq/1PYpRl1rTCEJWgn/0RrhqEgt2/lcS4ny8aFA6zMkiLrQJI7I9zkovI4rg0yqGbtQQWjojM3yuapzw4XLL2dgixT0EN3knpV1achaQiyuBeSzgp6pXCM X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?qLZQ4W+IZeY1+k1LsGngXhVCk+NrtHk/CmMvhLWfUjYxfL7veJzKdgpa0GgP?= =?us-ascii?Q?w7D5VvBIc4ziWwWsBk/PNx6ZTO1OnEUT3+TiLxju/yKRtBVzeboAX5Fs4aWi?= =?us-ascii?Q?oQgg0L/gMqGyIAHvYkjDm3RRj/NI6kmnGk6s2w4wmPjD63tP66y0J94cHpJb?= =?us-ascii?Q?J1eFwYCKrlQnS9umyREhjuwrd5u+tx+E4nRpaByODpvTEItcdGbUQV01xJyw?= =?us-ascii?Q?2MV2Phsy/PBLb1W7irgaeusfV5C+dfbXJKUtNdwdj+bJSfNwGMmb4NatO1x7?= =?us-ascii?Q?CGn8V4KcPmVr7c/i+9uQoMUOPFngojFrOo/+KN2P9+F3nvgVtwrLLQF0uvns?= =?us-ascii?Q?lTlt+XebYSYfNm4FVeeS94Az3YAfr50KY8JdoMZ74YCeqrlcH6a2+5Zb/UOq?= =?us-ascii?Q?0qkPjhVAhnWyd9LM39+XGOdtEKUTrFYcvv/w6mt9OymHmVa1PTVlQmZAHYRL?= =?us-ascii?Q?YBEUxGPrqjf363qP9OWW6Jhjz81OO/aWUtV8uBy3qJlLsxNsUg0b7g/Kr8EX?= =?us-ascii?Q?eoIr8iOcEuLhdUr/JokYp+cYeeKv0sw9V+A4d7f7M3MqhAI8LcK42cdrldws?= =?us-ascii?Q?BGfpuwFxiC518hFPe1gRwQj7gIm9IYy9R/OvI9OtWWHcuXRE4JXfTXBF6L2j?= =?us-ascii?Q?gt X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-bcc80.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: f4d39354-295c-4bf4-31f8-08dc3c637dc3 X-MS-Exchange-CrossTenant-AuthSource: DU2PR02MB10109.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Mar 2024 15:55:19.2398 (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: PA4PR02MB8195 Received-SPF: pass client-ip=40.92.58.69; envelope-from=arthur.miller@live.com; helo=EUR03-DBA-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, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=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: Mon, 04 Mar 2024 11:47:49 -0500 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:316805 Archived-At: Eli Zaretskii writes: >> From: Arthur Miller >> Cc: emacs-devel@gnu.org >> Date: Mon, 04 Mar 2024 13:19:15 +0100 >> >> >> Anyway; Python Intepretter and Emacs are not the same, but there are some >> >> important similarities and similar problems. What they are talking there might >> >> be an interesting multithreading strategy for Emacs as well. They have similar >> >> problem with the shared state. >> > >> > No, the problems in Emacs are much harder, because the shared state >> > exists independently of the programs written in Emacs Lisp, and >> >> How is shared state in Emacs independent of Emacs Lisp programs? > > Because Emacs Lisp programs run inside Emacs, and Emacs itself has a > very large global shared state. The tiniest ELisp program inherits > that state whether it wants it or not. Yes, but every interpretter and runtime has some state exposed to applicaiton programs and shared with them. Otherwise we are speaking about assembly or C at best. I agree that Python is much smaller and cleaner, then Emacs. But I think the priniple with the shared state is still similar. >> Lisp programs >> can modify, introduce and remove shared state, and that is what they do all the >> time; and so can Python programs. I am not sure I following; honestly, I am >> probably thinking of something different than you there. > > In Emacs, we have the current buffer and the selected window, and all > of the global variables and symbols that exist in Emacs from the > get-go. A Lisp program cannot remove that state. Of course. But buffers and other objects are built-in parts of the implementation. Every runtime has some parts that are not exposed to applicaiton programs, and can't be altered. Emacs adds many special-purpose objects to its Lisp machine, I agree. But that is rather volume. The solution they are trying seems to address exactly that problem: shared objects, so principally it might be something for the Emacs too; but practically I don't know.