From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.help Subject: Re: Why is Elisp slow? Date: Tue, 07 May 2019 08:56:24 -0400 Message-ID: References: <831BD780-F954-4E23-BF31-ED4E135C919B@icloud.com> <20190506125848.okei2qrib7m5p3vx@Ergus> <20190506161757.wg4wy3vr7emxnciv@Ergus> <443E6AB4-2478-4677-8A23-A0B04559E949@icloud.com> <84F2860D-523D-4F30-BD52-D6A915416167@icloud.com> <20190507104945.gfdrftaeztrzbkt6@Ergus> <44A389B2-9D9D-4C1F-B9E3-9859C77DAF70@icloud.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="6274"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: Ergus , help-gnu-emacs@gnu.org To: =?utf-8?B?7KGw7ISx67mI?= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Tue May 07 14:56:43 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 1hNzeE-0001Wh-PS for geh-help-gnu-emacs@m.gmane.org; Tue, 07 May 2019 14:56:42 +0200 Original-Received: from localhost ([127.0.0.1]:46448 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hNzeD-0002jH-Na for geh-help-gnu-emacs@m.gmane.org; Tue, 07 May 2019 08:56:41 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:56899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hNze3-0002j6-KK for help-gnu-emacs@gnu.org; Tue, 07 May 2019 08:56:32 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hNze2-0005XK-Lh for help-gnu-emacs@gnu.org; Tue, 07 May 2019 08:56:31 -0400 Original-Received: from pruche.dit.umontreal.ca ([132.204.246.22]:48826) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hNze2-0005Wz-HK for help-gnu-emacs@gnu.org; Tue, 07 May 2019 08:56:30 -0400 Original-Received: from ceviche.home (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.dit.umontreal.ca (8.14.7/8.14.1) with ESMTP id x47CuPEO020759; Tue, 7 May 2019 08:56:26 -0400 Original-Received: by ceviche.home (Postfix, from userid 20848) id B82F066184; Tue, 7 May 2019 08:56:24 -0400 (EDT) In-Reply-To: <44A389B2-9D9D-4C1F-B9E3-9859C77DAF70@icloud.com> (=?utf-8?B?IuyhsOyEseu5iCIncw==?= message of "Tue, 7 May 2019 20:51:27 +0900") X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 2 Rules triggered EDT_SA_DN_PASS=0, RV6540=0 X-NAI-Spam-Version: 2.3.0.9418 : core <6540> : inlines <7074> : streams <1820833> : uri <2841558> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 132.204.246.22 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:120252 Archived-At: >> - Writing wrappers in lisp for all our C functions exposed to Lisp I All those are defined with a "DEFUN" macro on the C side. Whatever change is needed on this side can likely be made largely mechanically, so I'm not worried. Similarly, you'll need to rewrite all the functions/macros like CONSP, SYMBOLP, FIXNUMP, XCAR, XCDR, make_fixnum, ... Performance of those is important. > What I was thinking about using CL to support Elisp is to define a new > namespace for symbols (which, in CL terms, is a so-called =E2=80=98packag= e=E2=80=99) > named =E2=80=98elisp=E2=80=99. As I already mentioned, this already exists: elisp.lisp. Stefan