From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.bugs Subject: bug#55676: [PATCH] non-recursive Lisp reader Date: Fri, 27 May 2022 16:03:32 +0200 Message-ID: <87pmjz5ayz.fsf@gnus.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22555"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cc: 55676@debbugs.gnu.org To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri May 27 16:19:34 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1nuaoQ-0005fU-6t for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 27 May 2022 16:19:34 +0200 Original-Received: from localhost ([::1]:36210 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nuaoP-0001ys-1h for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 27 May 2022 10:19:33 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40584) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nuaZO-0007C1-EY for bug-gnu-emacs@gnu.org; Fri, 27 May 2022 10:04:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:41644) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nuaZO-00027D-6E for bug-gnu-emacs@gnu.org; Fri, 27 May 2022 10:04:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nuaZO-00042J-2Z for bug-gnu-emacs@gnu.org; Fri, 27 May 2022 10:04:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 27 May 2022 14:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 55676 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 55676-submit@debbugs.gnu.org id=B55676.165366022615477 (code B ref 55676); Fri, 27 May 2022 14:04:02 +0000 Original-Received: (at 55676) by debbugs.gnu.org; 27 May 2022 14:03:46 +0000 Original-Received: from localhost ([127.0.0.1]:35535 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nuaZ8-00041Y-2A for submit@debbugs.gnu.org; Fri, 27 May 2022 10:03:46 -0400 Original-Received: from quimby.gnus.org ([95.216.78.240]:40902) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nuaZ4-00041G-Mj for 55676@debbugs.gnu.org; Fri, 27 May 2022 10:03:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID :In-Reply-To:Date:References:Subject:Cc:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=MMkIUxHF37B2WOtI1yvEWLESINzZm4t3CD/wwOZylP0=; b=CO04WM/d5950/tfIm5qjygDdhr n3GdRQcpotGxxBmmoeuSOsCWl1AfzIYS0z4Y2nrvVdoFcpHupp6EpZ20vid77wsJ2MtxI84BESx5f 9FPamJfgCaPT+ARZXxCjJEY+cywYbuRCz409+Gi4I2W3NwFNs/4mdV8hlziHUA0jgCX8=; Original-Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nuaYv-0000EO-Ii; Fri, 27 May 2022 16:03:36 +0200 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEU0GxdWLx2WTUX/ //+KXLFAAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+YFGA8kOxo77YAAAAFuSURBVCjPTdCxbtwwDAZg KrB2p5AK9G3kQ3hDJwnQL8C3dciQe4sOWbIFKA9o5t5wfsr+9BVFBhv4zF8kZZFFpaFhKW83CVJk XoqIHByzzIVf5OEmE5EqC/LFkSTNjrzxlcqUHLoxNNWYhYnjP0TvJme2iRhwxB35oIUj9ORfclu6 hHBQnoyIrbIiCwsBoXVp5ScPIqBbD7WoA8i/engqyqVqw9c/XfrMrNTahnXBbE+M1XbpOWLqWQLP IGb9NiVumPtoMfezpujdFDG2sxFhWGOuvRm4BK5A0+N63XECFv3+fG1cHcPWoOvV4MBrTIpx65X3 xLtmrOMDSSbgBwoHr+iSfANCX7DKzAjKwPEFkEdHHaYMSNn/1J6ELJmoRCb82jsiG/h9eh29xGci 76jysBmhn8C7WR1lR/Tz73avZPi43/V/RY0Ijoxmxtgj4TON3WXZLjsu9gleCgUf9woVipwcwwEJ JzlthvuzbX8BZU6TIT7dm1kAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDUtMjRUMTU6MzY6NTgr MDA6MDBzmPqoAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTA1LTI0VDE1OjM2OjU4KzAwOjAwAsVC FAAAAABJRU5ErkJggg== X-Now-Playing: Thomas Brinkmann's _On In Out_: "Ruti_Sakichis Dream" In-Reply-To: ("Mattias =?UTF-8?Q?Engdeg=C3=A5rd?="'s message of "Fri, 27 May 2022 15:33:35 +0200") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:233207 Archived-At: Mattias Engdeg=C3=A5rd writes: > You probably saw this one coming. =F0=9F=98=80 > It's a restructuring of the Lisp reader so that it no longer uses > recursion for reading nested data structures. Wow, cool. > The primary motivation is eliminating the limitation of the C stack > (and potential overflow crash). As a happy side-effect, the change > improves reader performance by a few percent, exact amount depending > on what is being read. This translates into a small but measurable > speed-up in loading packages (.el and .elc), and in > byte-compilation. The performance increase is both from removal of > recursion and closer attention to performance. Sounds excellent. > Care has been taken to not change the reader behaviour, although some > error handling may differ in unimportant ways. Some obvious bugs found > during the conversion have been fixed: for example, #_ followed by > whitespace now represents the interned empty symbol; previously, it > gave an unintended empty symbol. A non-breaking space after a single > dot now results in the dot token instead of the dot as a symbol. Hm... sounds logical, I think. --=20 (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no