From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eric Abrahamsen Newsgroups: gmane.emacs.bugs Subject: bug#33653: 27.0.50; Change Gnus obarrays-as-hash-tables into real hash tables Date: Tue, 11 Dec 2018 15:30:29 -0800 Message-ID: <87bm5rproq.fsf@ericabrahamsen.net> References: <8736raz3ec.fsf@ericabrahamsen.net> <87y392xoht.fsf@ericabrahamsen.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1544570952 8047 195.159.176.226 (11 Dec 2018 23:29:12 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 11 Dec 2018 23:29:12 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) To: Lars Ingebrigtsen , 33653@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Dec 12 00:29:07 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gWrSb-0001w0-P5 for geb-bug-gnu-emacs@m.gmane.org; Wed, 12 Dec 2018 00:29:05 +0100 Original-Received: from localhost ([::1]:41865 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gWrUi-0007k6-Ei for geb-bug-gnu-emacs@m.gmane.org; Tue, 11 Dec 2018 18:31:16 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52032) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gWrUZ-0007k0-MD for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2018 18:31:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gWrUV-00058b-66 for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2018 18:31:07 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:40023) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gWrUU-00058E-Gm for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2018 18:31:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gWrUU-0004wv-6g for bug-gnu-emacs@gnu.org; Tue, 11 Dec 2018 18:31:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eric Abrahamsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 11 Dec 2018 23:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 33653 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 33653-submit@debbugs.gnu.org id=B33653.154457104018994 (code B ref 33653); Tue, 11 Dec 2018 23:31:02 +0000 Original-Received: (at 33653) by debbugs.gnu.org; 11 Dec 2018 23:30:40 +0000 Original-Received: from localhost ([127.0.0.1]:44281 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gWrU8-0004wH-EY for submit@debbugs.gnu.org; Tue, 11 Dec 2018 18:30:40 -0500 Original-Received: from mail.ericabrahamsen.net ([50.56.99.223]:52691) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gWrU7-0004wA-1H for 33653@debbugs.gnu.org; Tue, 11 Dec 2018 18:30:39 -0500 Original-Received: from localhost (unknown [207.109.85.82]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: eric@ericabrahamsen.net) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id 460183FB3D; Tue, 11 Dec 2018 23:30:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mail.ericabrahamsen.net; s=mail; t=1544571038; bh=CcYACM96+IV18GKldJHQEmdOl7iur3AIUZvqgDLMMNk=; h=From:To:Subject:References:Date:In-Reply-To:From; b=L759zXOdeh25ZbOPneWeM4oCEGtwo1kg6ZltAIljBpOjcNqR2Bj5pPvrhBhDj0Lws BpTNR0adLpsoCJeahU4a0xsD3kzyvEWp0HMRZ7Mmdxrbp8WEPPx0V5c17+k3ID2ShN WEjxxX/kY8grJ3uDXC1YKQ+AHDnfq0atg9ay49YI= In-Reply-To: (Lars Ingebrigtsen's message of "Tue, 11 Dec 2018 20:23:33 +0100") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:153371 Archived-At: On 12/11/18 20:23 PM, Lars Ingebrigtsen wrote: > Eric Abrahamsen writes: > >>> Here's the next thing: turning Gnus' obarrays-as-hash-tables into real >>> hash tables. Gnus currently stores information about groups by coercing >>> group names to unibyte, interning them in custom obarrays, and then >>> setting their symbol-value to whatever value needs to be stored. I think >>> all this was written before Emacs had actual hash tables. >> >> Also hounding Lars for his opinion... > > Using real hash tables sounds nice, if there's no negative performance > impact. Cool! In fact it seems to be a hair faster. If you have a moment for this, would you look at the second commit in the scratch/gnus-hashtables branch? The first commit seems fairly stable, but the second has to do with encoding -- if group names never need to be unibyte, it should be possible to leave them decoded inside Gnus itself. Besides active files and server communication, are there any other places where group names would need to be encoded? Thanks, Eric