From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: tomas@tuxteam.de Newsgroups: gmane.emacs.devel Subject: Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2) Date: Sat, 13 Aug 2022 07:14:16 +0200 Message-ID: References: <83a68dti6w.fsf@gnu.org> <874jykzvx9.fsf@yahoo.com> <83fsi4sttn.fsf@gnu.org> <838rnws5c7.fsf@gnu.org> <87wnbde9jo.fsf@disroot.org> <87tu6gdac3.fsf@disroot.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="YH/Qg43aHchMsGNr" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="1802"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Akib Azmain Turja Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Aug 13 07:16:59 2022 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 1oMjW7-0000Eg-2Z for ged-emacs-devel@m.gmane-mx.org; Sat, 13 Aug 2022 07:16:59 +0200 Original-Received: from localhost ([::1]:58572 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oMjW5-0002sm-TC for ged-emacs-devel@m.gmane-mx.org; Sat, 13 Aug 2022 01:16:57 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:34944) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oMjTZ-0001pp-T1 for emacs-devel@gnu.org; Sat, 13 Aug 2022 01:14:22 -0400 Original-Received: from mail.tuxteam.de ([5.199.139.25]:59552) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oMjTX-0001NJ-Le for emacs-devel@gnu.org; Sat, 13 Aug 2022 01:14:21 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tuxteam.de; s=mail; h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject :Cc:To:From:Date:Sender:Reply-To:Content-Transfer-Encoding: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=fLc4vnY/sFmEzhqc3+g45IFNqSWgnRQPiJS7xqUVfIs=; b=XkbGN1/7TSiYgT4zgqTpeo321z yNcfWnbRU5V/1UJj+gnPLKyHjgD+SNPsv3QaKy/WdsEe6OEqJciOjsZixJ15T8wAszrlNK8NAdW7h fXFz1tJboEZyn0EKCm8cLUnL35JltLnD/6Ujg4PEv30toW+BsxpX4cbYtH8Hu23eoRgEK9Yi8PSGV dJhppCL8YfC/m0QTWPCYrvGlEKSnbZQOPLaA/GtVYXz7Iz8ueBMfzKltk2N+hXa3slWPcr5FA+VLz xu/ca9CqX5NG+N8Wf+J2eFSmK4Icysa9mh6vBAP0oK0IuerT7Ewu0713f0oQDSDFsbdLT/TzX0Aqf lAVMtntw==; Original-Received: from tomas by mail.tuxteam.de with local (Exim 4.94.2) (envelope-from ) id 1oMjTU-0001ZW-Iv; Sat, 13 Aug 2022 07:14:16 +0200 Content-Disposition: inline In-Reply-To: <87tu6gdac3.fsf@disroot.org> Received-SPF: pass client-ip=5.199.139.25; envelope-from=tomas@tuxteam.de; helo=mail.tuxteam.de 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, 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-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" Xref: news.gmane.io gmane.emacs.devel:293403 Archived-At: --YH/Qg43aHchMsGNr Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Aug 13, 2022 at 10:41:16AM +0600, Akib Azmain Turja wrote: [...] > Yeah, it's possible for very optimized Brainfuck code to beat poor C > code. Emacs has a native compiler, and AFAIK it's a ahead of time (AOT) > compiler. If you really need a JIT, do performance-critical things in > Guile Scheme and use results from Emacs. I wasn't talking about brainfuck, but about Lua. And about the fact that performance is such a broad topic as to make sweeping assertions (like "C is faster than...") almost always wrong in some way. Of course, current C compilers are extremely good in the niche they were designed for (AOT compiling, not extremely complex systems [1]), because tons and tons of resources went into them already. When other systems get that attention (see Stefan's example with Javascript in this thread), you see results. They can play out advantages found in other niches (no AOT, e.g. JIT) and so on. As for Guile/Emacs, there are people working on that. Their approach, though, is to teach Guile to understand Emacs Lisp. It moves slowly... for a lack of resources. Cheers [1] Extremely complex systems are still possible, but very expensive. Cf. the Linux kernel. [2] e.g. https://www.emacswiki.org/emacs/GuileEmacs --=20 t --YH/Qg43aHchMsGNr Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iF0EABECAB0WIQRp53liolZD6iXhAoIFyCz1etHaRgUCYvczIgAKCRAFyCz1etHa Rky7AJ9WNwh5ul15y9NXNsW3YNSTX+zrDgCfdusZFIueb417Vsb0AqBLdzsaV8o= =JuL3 -----END PGP SIGNATURE----- --YH/Qg43aHchMsGNr--