From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: "Bringing GNU Emacs to Native Code" at the European Lisp Symposium Date: Wed, 29 Apr 2020 21:14:36 -0400 Message-ID: References: <69d8b48d-bd09-41c1-a89d-ed76fe0284a4@default> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="94456"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Emacs developers , Stefan Kangas , Andrea Corallo To: Drew Adams Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Apr 30 03:15:14 2020 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 1jTxnF-000ORC-0g for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Apr 2020 03:15:13 +0200 Original-Received: from localhost ([::1]:52426 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jTxnE-0004Kk-2u for ged-emacs-devel@m.gmane-mx.org; Wed, 29 Apr 2020 21:15:12 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:53214) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jTxmj-0003tp-LO for emacs-devel@gnu.org; Wed, 29 Apr 2020 21:14:41 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jTxmj-00080H-1D for emacs-devel@gnu.org; Wed, 29 Apr 2020 21:14:41 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:40607) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jTxmi-000807-Kp for emacs-devel@gnu.org; Wed, 29 Apr 2020 21:14:40 -0400 Original-Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 6E09A1009E1; Wed, 29 Apr 2020 21:14:39 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 9B8F6100447; Wed, 29 Apr 2020 21:14:37 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1588209277; bh=X7rlFoOiTWXqRcsBy8K81aEgAzC4j3FfQyzoWVpfU8w=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=f2dMj5ZvriOSkXu5bgnl2DA/M5apDH6MVp7DV6dKTZLkENi/uXIH7YwZDwm/NaTri 1DfxZyF0a+5kYXQvv7KPA2eLGPdhl3Nq/YQeuR+TRQ/XfBkkc26Vwsv5ea9fwuP7mR UzdoL2X6iytvTmT6TAJu+ZkpC4hxeaEcMsGew8tcmptokZ1pJA+AVY2WRMFAbYAOAX BzSwbQym6IbvRI07U80h1D94behWH5g8qzPQrGHhngD5PDlDwzhi8NyvlUNy4A07eP vjlVHzyAoYVHtKY48Bw1LZCHOP9iQQaozTLIWYAX44qkfTZGOsaCfNqJaNOmMtPWq7 M2gzmhgDw1UEg== Original-Received: from alfajor (unknown [216.154.3.202]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 3C3411202FA; Wed, 29 Apr 2020 21:14:37 -0400 (EDT) In-Reply-To: (Drew Adams's message of "Wed, 29 Apr 2020 12:29:29 -0700 (PDT)") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-detected-operating-system: by eggs.gnu.org: First seen = 2020/04/29 21:08:16 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] X-Received-From: 132.204.25.50 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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:248194 Archived-At: > It's a lot clearer to just say that your work > assumes a non-nil value of that variable (and > there's nothing wrong with that), than it is to > either (1) hope that someone guesses what you > mean by the lexical Elisp dialect or (2) expect > that a reader will consult Sect 8.1 of Stefan's > paper and figure out what you mean from that. Or rather that this detail is mostly irrelevant in the context of his paper. For the same reason his paper doesn't explain how buffer-local variables interact with dynamic scoping or a myriad of other details of Elisp's semantics. Stefan PS: Since his compiler takes the bytecode as input, it's largely agnostic to the source's scoping rules. I don't even know what makes his code currently only work for Elisp/l and not Elisp/d. It's most likely a minor technical detail.