From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Newsgroups: gmane.emacs.help Subject: Re: Why is Elisp slow? Date: Thu, 2 May 2019 22:00:00 +0200 Message-ID: <20190502200000.GK28987@tuxteam.de> References: <86o9c4np6q.fsf_-_@zoho.com> <8636tfocyl.fsf@zoho.com> <20190502075617.GA18331@tuxteam.de> <874l6d3ylg.fsf@mbork.pl> <20190502131827.GA28987@tuxteam.de> <83k1f8q39o.fsf@gnu.org> <87zho43c13.fsf@mbork.pl> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="/ZYM6PqDyfNytx60" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="10476"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Mutt/1.5.21 (2010-09-15) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu May 02 22:00:27 2019 Return-path: Envelope-to: geh-help-gnu-emacs@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 1hMHsY-0002Qd-UQ for geh-help-gnu-emacs@m.gmane.org; Thu, 02 May 2019 22:00:27 +0200 Original-Received: from localhost ([127.0.0.1]:57972 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMHsX-0006Ot-SY for geh-help-gnu-emacs@m.gmane.org; Thu, 02 May 2019 16:00:25 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:48190) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMHsF-0006Nm-9e for help-gnu-emacs@gnu.org; Thu, 02 May 2019 16:00:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hMHsC-00015P-Uv for help-gnu-emacs@gnu.org; Thu, 02 May 2019 16:00:07 -0400 Original-Received: from mail.tuxteam.de ([5.199.139.25]:39496) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hMHsB-00011z-NZ for help-gnu-emacs@gnu.org; Thu, 02 May 2019 16:00:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tuxteam.de; s=mail; h=From:In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject:To:Date; bh=DxrpT6lzJ34U+nMAxEjvkdCmGOWX5bGYJgTAyJ2iP6w=; b=E6nB5oUXX555N5NGIRe/vKjVNPYcnwcZaobFwGtHZQMgrL3PbsXyxOAxoA2KcF0cmYoLw4wD/rGdt9yLQNhwYCV2+1CQd6WANq7ml6Pv3DHVOZY7dQb2/qim85vnXcd4vgTVZzXKlUXyWAlvHAZnSHDK90Iq5ymfAQkwq7F/smF9TTc3hAfxL9tEAOw0aarL7tG5mnkJdJi4/Njv2/5zSFCaVrrKHsBqHVNbDxLkiQKw+CJoD2S2rsqkerW4l5yKaOty4cRSn9vRqiWS4ETDXzmaxIjNxUYheJWsVUP1ZEVDkYOmNPyGYBRoCANvG5VpanjSyAL8KZ0PBbXfLUNnYQ==; Original-Received: from tomas by mail.tuxteam.de with local (Exim 4.80) (envelope-from ) id 1hMHs8-0002Md-68 for help-gnu-emacs@gnu.org; Thu, 02 May 2019 22:00:00 +0200 Content-Disposition: inline In-Reply-To: <87zho43c13.fsf@mbork.pl> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 5.199.139.25 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.org gmane.emacs.help:120139 Archived-At: --/ZYM6PqDyfNytx60 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, May 02, 2019 at 09:13:28PM +0200, Marcin Borkowski wrote: [...] > > (My personal rant to package authors is that they are way too eager to > > implement stuff in Lisp which cannot possibly be fast enough or > > scalable enough, instead of urging Emacs to provide new C primitives > > and core features, or, better, submitting patches to implement such > > features in C. Two cases in point are linum-mode and fci-mode. End > > of rant.) >=20 > That is an interesting POV, although I'm not sure if I agree. IOW, > I fully understand why people might do so. I, for one, consider myself > pretty fluent in Elisp and hardly literate in C. This approach is known as "Ousterhout's dichotomy" [1], after John Ousterho= ut, author of Tcl (which was conceived as a very simple scripting language meant to extend existing applications). Tcl grew later a bytecode interpreter (as did elisp) -- making the C interface significantly more complex (but the interpreter significantly faster). Walking the trade-off between simple and efficient is interesting. Cheers [1] https://en.wikipedia.org/wiki/Ousterhout%27s_dichotomy -- tom=C3=A1s --/ZYM6PqDyfNytx60 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEYEARECAAYFAlzLTEAACgkQBcgs9XrR2kamfQCfbcw+G6aieE3Jd85dz/nd5ISU UfQAni7f0cO5RhN1iAzZaHMPO1U+1Alc =9uSh -----END PGP SIGNATURE----- --/ZYM6PqDyfNytx60--