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: Q: BLV for function slots + BL obarray/hmap for symbol lookup? Date: Sat, 29 May 2021 09:31:43 +0200 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="17215"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (windows-nt) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat May 29 09:32:43 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 1lmtSc-0004H3-5e for ged-emacs-devel@m.gmane-mx.org; Sat, 29 May 2021 09:32:43 +0200 Original-Received: from localhost ([::1]:37680 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lmtSa-00029B-7x for ged-emacs-devel@m.gmane-mx.org; Sat, 29 May 2021 03:32:40 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:48694) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lmtRn-0001Uc-C5 for emacs-devel@gnu.org; Sat, 29 May 2021 03:31:51 -0400 Original-Received: from mail-oln040092075039.outbound.protection.outlook.com ([40.92.75.39]:37766 helo=EUR04-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 1lmtRi-0002D7-P6 for emacs-devel@gnu.org; Sat, 29 May 2021 03:31:51 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VtTMf0UA8ze4b8gW6bxkt6Ioc0kc6DL2TfBhjpOXOiqDXUb2Jn3kEslnjS8HypCLRYh+1Y4MDTVHjxCj9D+qwFufOxlTaYpzQjXAF3lbT7PE4DxGyaBNaGVQZEeQA51DE+mdzdON7euj9HJpc3CcK/I9FJwjPmDL2n9wRjMJ9dvutaxGyX2e+Su6ZrKk5Gy8idIaj+QMX1Qgih0iONe4GFyxi4iuCgNt8/wKtepvC1Jvb8hi3CX/QkxekUiZJXuJXK620NkziYLSnBMfD99WkIBzmQmUISD+5YCN3rzeEhUMSHoC/R4n3JmnYP04f4joge+Z39K7WKThvDrGCYxJhA== 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-SenderADCheck; bh=mo02ZY+2FOwIy4sY7v/2lLWvY0bXvEWhWiUr7r1LZEo=; b=lIn2CrzVKDdWmxzYpFpOi7gjIa3cftmnt81KFp+FK2ZCNoGULOJaGGjA/xJaZMh8hpP8ENjzH0UEHF6H/53kSOmp7Y9RVLfBLxN7zTPSDtjEWyd2tTdbirndez+iHYQ4YmRMb6WoC7rADXkSXDHwGnFa1PnfjZk8SiBisoOw8xcy+8IoN+Q/Y2Ln70mBM7r8OVtVfXlajdHoaT1mECD4HkgM2RwWrLVfgFA0yXSCxHbEaZHEqPy+TztlL5rA+iUqUZrotUjazEnUtz9Ds3FwZHnp7SGdZ9PUJ5fWMTIsyyxRLoXf5KeY2qWKHLco1bj6fCUxkErz2dJWL42AP7o/Kw== 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=mo02ZY+2FOwIy4sY7v/2lLWvY0bXvEWhWiUr7r1LZEo=; b=h06MrBlr1D7VAFFutjzNPiUkhVlWdBQMpp0mcBfYMqhGgI/sJKhXnM0xOMv9st2qudhjy1k9q4iydKSE3dgPs2CRUflJ9ZJ8Naa+YCrjOzM17CTO3TGrNR3GFFJs8mB9a9d3ojvQIwnaG6C+gaDTci4y/1ttuNXDlyoabSUUAP76vHT6bkob1moe503WG02NkhmWBUsblcKCKSIOZzj02ahbGfxnCpbyIozTILpYtOMj+lC0Y0tVYlxCJWealojkoD7USi+WljPxjhn/YhvziwH3tZ2kZYLe+JSpLCXKzOLoFuzptPSoe66ANqZAOFIguQkKassbqtzeSD4HGt6akg== Original-Received: from VI1EUR04FT052.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0e::44) by VI1EUR04HT060.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0e::312) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.28; Sat, 29 May 2021 07:31:43 +0000 Original-Received: from AM9PR09MB4977.eurprd09.prod.outlook.com (2a01:111:e400:7e0e::4a) by VI1EUR04FT052.mail.protection.outlook.com (2a01:111:e400:7e0e::397) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.28 via Frontend Transport; Sat, 29 May 2021 07:31:43 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:A5B934709AD3AD9FA69B5F52BD459EB16552209DE8A8AC4D35049F99FDD2B97A; UpperCasedChecksum:C0CFDDE9824C6C2B3DFAA09121F692BFE4CEFB79CABE901794D4F47FBC261688; SizeAsReceived:7889; Count:46 Original-Received: from AM9PR09MB4977.eurprd09.prod.outlook.com ([fe80::d1c1:2a0d:3b2b:4591]) by AM9PR09MB4977.eurprd09.prod.outlook.com ([fe80::d1c1:2a0d:3b2b:4591%7]) with mapi id 15.20.4173.027; Sat, 29 May 2021 07:31:43 +0000 In-Reply-To: (Arthur Miller's message of "Sun, 23 May 2021 18:23:27 +0200") X-TMN: [EhpI0uxcXRjAgGsSfzQpFDLe+RjpuVi0] X-ClientProxiedBy: AM6PR0202CA0039.eurprd02.prod.outlook.com (2603:10a6:20b:3a::16) To AM9PR09MB4977.eurprd09.prod.outlook.com (2603:10a6:20b:304::20) X-Microsoft-Original-Message-ID: <82wnrim1wg.fsf@live.com> X-MS-Exchange-MessageSentRepresentingType: 1 Original-Received: from HP-Laptop.homepc (81.232.177.30) by AM6PR0202CA0039.eurprd02.prod.outlook.com (2603:10a6:20b:3a::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4173.20 via Frontend Transport; Sat, 29 May 2021 07:31:43 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 46 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 3d03617b-b1c7-4d9a-6200-08d92273cea4 X-MS-TrafficTypeDiagnostic: VI1EUR04HT060: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DHB2CEIXonWeKL6kRIKDgWzZmZi+wTScHLkXto+snLvuBy3wkYeBcoeR4RpAW8ejnTtmLFEVrDy3t2rx30pOA2buPmydZJ6dGcaqWR4w+xWtZdiULWdUZbwDN8rnd5WWr78FNr7JBTYdbOAKEHHMSKJpFIXJ3J6BiNkJ5uNsdzV59jfabsqpSXFG9Q1CmV2LAGeSUuUOIQv+KCAKREYJ86JHu4xZPO3WC/SD41u19voHAtV3rMlAUbgpCoe91ZhMLumuBJ8KslJQ4T5RhijSqeIml3jpcN+LIiGyPHYFhQPVYtFXNnyFRWBkrFRKvSQfJ3Vg0azBcvku8Geo2gpE8BfTn+A1kBBoJZBRPabMuZRzMPSFGFgkO9zePndCwdKs X-MS-Exchange-AntiSpam-MessageData: Qa6M0k1d2Rt0PeKDUlRQo3+eGK1IyV5Rpd9NXyEobcexgWdFf9FP7t+ZOoY1/4r40mJfJ/FRWxKKcc9iLoqeLIMqzsZQ5HviOOUkx09fCJqnJBf0G7UwZfVmvDE2gRFKIefi1TvdTTbz63FeOHv7AA== X-OriginatorOrg: live.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d03617b-b1c7-4d9a-6200-08d92273cea4 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 May 2021 07:31:43.6294 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: VI1EUR04FT052.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1EUR04HT060 Received-SPF: pass client-ip=40.92.75.39; envelope-from=arthur.miller@live.com; helo=EUR04-VI1-obe.outbound.protection.outlook.com X-Spam_score_int: -1 X-Spam_score: -0.2 X-Spam_bar: / X-Spam_report: (-0.2 / 5.0 requ) BAYES_40=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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:270034 Archived-At: Arthur Miller writes: >>> If "local obarray" is declafed in a buffer, all interning would go to >>> that one, like all set/qset set's the local vaalue if there is one. >> >> But how do you control which buffer is current when the `intern` takes place? >> >> Also, have you considered something like >> >> (setq-local obarray (obarray-copy obarray)) > > You mean to copy Emacs global obarray into local variable, the other way > around so to say, and use that one all the way? I didn't :-). Feels a bit > drastic to a big global environment, but it might work, I'll have to try > it. Thanks for the suggestion(s). Just as curiosa to confirm, yes that worked, rather well :-). That was actually what I asked for if you think, I just didn't thought of copying over the obarray. (setq-local obarray (copy-sequence obarray)) (defvar mysymbol "A SYMBOL") (defun myfunc () "HELLO") nysymbol and myfunc were avialable only in that buffer. Don't know how efficient it is to copy entire obarray, in possibly serveral buffers, but for the intended purpose, as a buffer-local namespace works well. Thanks.