From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: Re: Emacs i18n Date: Sat, 9 Mar 2019 12:47:19 -0800 Organization: UCLA Computer Science Department Message-ID: References: <87o97aq6gz.fsf@jidanni.org> <83h8ckezyt.fsf@gnu.org> <83o96qegv1.fsf@gnu.org> <32b1ab1b-bef4-629a-8830-b1dcc6915087@cs.ucla.edu> <83a7iae9va.fsf@gnu.org> <05ed2dec-2a84-f7dc-1af5-c9d923992785@cs.ucla.edu> <87bm2p56gu.fsf@mail.linkov.net> <838sxrdgco.fsf@gnu.org> <83mum6bv11.fsf@gnu.org> <87zhq6nwsi.fsf@mail.linkov.net> <8336nxbxfi.fsf@gnu.org> <2539FAB2-2D71-44F5-B8D9-2C4AFE52ACEC@gmail.com> <83wol986to.fsf@gnu.org> <75275F9B-D257-4C9E-85A0-A7F57C93FD64@gmail.com> <83mum48s9t.fsf@gnu.org> <87ef7gbg08.fsf@gmx.de> <83h8cc8gy6.fsf@gnu.org> <875zssb853.fsf@gmx.de> <83wol86jy1.fsf@gnu.org> <03d28738-3cd3-e853-4765-43a7087682f8@cs.ucla.edu> <83imwr7qwa.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="136328"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.1 Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Mar 09 21:48:10 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h2it7-000ZLl-OU for ged-emacs-devel@m.gmane.org; Sat, 09 Mar 2019 21:48:09 +0100 Original-Received: from localhost ([127.0.0.1]:35358 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h2it6-0000sH-LR for ged-emacs-devel@m.gmane.org; Sat, 09 Mar 2019 15:48:08 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:43925) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h2isP-0000s7-4P for emacs-devel@gnu.org; Sat, 09 Mar 2019 15:47:25 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h2isO-0006FJ-CJ for emacs-devel@gnu.org; Sat, 09 Mar 2019 15:47:25 -0500 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:52254) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h2isN-0006CQ-0v; Sat, 09 Mar 2019 15:47:23 -0500 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 1195B161502; Sat, 9 Mar 2019 12:47:21 -0800 (PST) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id w_D-xCqdmuES; Sat, 9 Mar 2019 12:47:20 -0800 (PST) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 3B575161508; Sat, 9 Mar 2019 12:47:20 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 3PD0L4N9qQrk; Sat, 9 Mar 2019 12:47:20 -0800 (PST) Original-Received: from [192.168.1.9] (cpe-23-242-74-103.socal.res.rr.com [23.242.74.103]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 070D51614FE; Sat, 9 Mar 2019 12:47:20 -0800 (PST) In-Reply-To: <83imwr7qwa.fsf@gnu.org> Content-Language: en-US X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 131.179.128.68 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:233996 Archived-At: Eli Zaretskii wrote: >> The total amount of virtual memory would depend on the catalog size. A >> reasonable upper bound for current Emacs master would be 61 MB (the sum of sizes >> of all of Emacs's .el files). Although 61 MB is nontrivial, there should be >> little trouble fitting it into virtual memory even on a 32-bit platform. > The same is true for the Lisp files themselves. Yet we don't load > them all in advance, because that's simply not economical. No, it would be quite economical if we put all the .elc files into one big file that was mmapped in and then used lazily (which is what GNU gettext does for message catalogs). Emacs doesn't do that because historically it developed another way to use .elc files, a way that is good enough in practice even if it might not be as efficient as the mmap approach. The GNU gettext library was historically developed to use mmap, and is good enough in practice for Emacs as-is. None of the issues discussed in this thread mean that we should redesign the gettext library, or split up message catalogs only for performance reasons. On the contrary, splitting things up (or rewriting the gettext library in Elisp) is likely to make things slower.