From mboxrd@z Thu Jan  1 00:00:00 1970
Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail
From: Jim Porter <jporterbugs@gmail.com>
Newsgroups: gmane.emacs.bugs
Subject: bug#66756: 30.0.50;
 [PATCH] Improve discussion of 'let' in Elisp Introduction manual
Date: Fri, 24 Nov 2023 01:01:33 -0800
Message-ID: <64d90b0b-e003-7bc3-5312-6c7ab4c4591f@gmail.com>
References: <a9812c1d-71e4-5f3f-83a4-a2923e649f3a@gmail.com>
 <a5120e2f-b008-1b74-1ad9-3fe7d861b13c@gmail.com>
 <E1qx8nq-0007DY-HV@fencepost.gnu.org>
 <3ade119d-0f0d-e60e-1bdc-9c7e02c1559c@gmail.com>
 <E1r4YeF-0001fe-Ex@fencepost.gnu.org>
 <381836df-c16f-b3e7-d0c4-473290e165de@gmail.com>
 <f44cca7f-13bb-a41a-c9ce-55f1b736c52b@gmail.com>
 <E1r5zuY-00041H-Bl@fencepost.gnu.org>
 <9239b6bd-b476-b6c1-aef9-245e439aee42@gmail.com> <83jzq7fx5o.fsf@gnu.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214";
	logging-data="34581"; mail-complaints-to="usenet@ciao.gmane.io"
Cc: rms@gnu.org, 66756@debbugs.gnu.org
To: Eli Zaretskii <eliz@gnu.org>
Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Nov 24 10:02:13 2023
Return-path: <bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org>
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 <bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org>)
	id 1r6S4j-0008q6-4M
	for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 24 Nov 2023 10:02:13 +0100
Original-Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <bug-gnu-emacs-bounces@gnu.org>)
	id 1r6S4W-0002JU-TL; Fri, 24 Nov 2023 04:02:00 -0500
Original-Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>)
 id 1r6S4U-0002J9-KF
 for bug-gnu-emacs@gnu.org; Fri, 24 Nov 2023 04:01:58 -0500
Original-Received: from debbugs.gnu.org ([2001:470:142:5::43])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>)
 id 1r6S4U-0000Gg-Bw
 for bug-gnu-emacs@gnu.org; Fri, 24 Nov 2023 04:01:58 -0500
Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2)
 (envelope-from <Debian-debbugs@debbugs.gnu.org>) id 1r6S4Y-0002rR-DJ
 for bug-gnu-emacs@gnu.org; Fri, 24 Nov 2023 04:02:02 -0500
X-Loop: help-debbugs@gnu.org
Resent-From: Jim Porter <jporterbugs@gmail.com>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@gnu.org
Resent-Date: Fri, 24 Nov 2023 09:02:02 +0000
Resent-Message-ID: <handler.66756.B66756.170081650610976@debbugs.gnu.org>
Resent-Sender: help-debbugs@gnu.org
X-GNU-PR-Message: followup 66756
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
Original-Received: via spool by 66756-submit@debbugs.gnu.org id=B66756.170081650610976
 (code B ref 66756); Fri, 24 Nov 2023 09:02:02 +0000
Original-Received: (at 66756) by debbugs.gnu.org; 24 Nov 2023 09:01:46 +0000
Original-Received: from localhost ([127.0.0.1]:35579 helo=debbugs.gnu.org)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <debbugs-submit-bounces@debbugs.gnu.org>)
 id 1r6S4I-0002qx-90
 for submit@debbugs.gnu.org; Fri, 24 Nov 2023 04:01:46 -0500
Original-Received: from mail-pl1-x62f.google.com ([2607:f8b0:4864:20::62f]:50379)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jporterbugs@gmail.com>) id 1r6S4G-0002qk-Gu
 for 66756@debbugs.gnu.org; Fri, 24 Nov 2023 04:01:45 -0500
Original-Received: by mail-pl1-x62f.google.com with SMTP id
 d9443c01a7336-1cf897c8de1so11642675ad.0
 for <66756@debbugs.gnu.org>; Fri, 24 Nov 2023 01:01:40 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1700816494; x=1701421294; darn=debbugs.gnu.org;
 h=content-transfer-encoding:in-reply-to:from:references:cc:to
 :content-language:subject:mime-version:date:message-id:from:to:cc
 :subject:date:message-id:reply-to;
 bh=sQEwkGG2voqhxzPPbPPKBVPzV+Ze1zUevsAmj+7MOD0=;
 b=hy5w66KFQk2OvWW4rdtacB7rhWUT/TSxj0ghdW42981soO8PgmsBSamLpXmd87Vlod
 FHg4VRKw2cQVYKC5Hd7f/kr4xcNr888l+VUTYTZjQM5VfIARctKCpWkj/Mf9RwBgajGe
 l7piixVMBIav8Y2ms/bV+1Ppc7VxnkN4mnpBobYBex3qzLz/DfMYUiHXlrLM9k31w9hw
 rtykwoHZgyfZKIxiwlIPhGpaysVBuHPspOsZVq9VSiDHncN63iiJUokQcqINY+0SP04S
 4D01xwpvZlHGlefBP7F18Vt3TEOT9r5jd9bVh6qAAPDev+W2JxAjhiz4K51JV3UnDXdj
 kxbg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1700816494; x=1701421294;
 h=content-transfer-encoding:in-reply-to:from:references:cc:to
 :content-language:subject:mime-version:date:message-id
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=sQEwkGG2voqhxzPPbPPKBVPzV+Ze1zUevsAmj+7MOD0=;
 b=G8SpGM1fUX1TMZQDHMUgoCwBgWqhAuKSs/zf79coCknfSR+gwTOm9kj2xeyutBI3Xj
 zPZrFgYuLdDLkKPxVM0m2GcXip62ABiFocKEFiBFvbNrDwmYVTkf1z51Msbw3g/ab+pw
 EIe2Zwlc3Q5hBjUd4CeBhd8402cpjYl37x0AAIFF7+q+JHAWFASBbNd6ODymrOxee8LZ
 9LOpCjOF/vJxNoupZg4hSEYdaiyZbb1K4SXW2giQ359du7GdlU3oiTaxgNqswbuaF2oQ
 F4+wJya1JaTlQGbm+rq//5vQr71a9/TS86az584V1lAw58CiKXd24dXsbT+eYTqVTU4x
 6SeQ==
X-Gm-Message-State: AOJu0YxkS/wXvN92bPjBJF6xayf19NoDF7TP43FG0PftJOHQYK0dUynR
 eljp1oVcQTvJZgtTC2g+TIM=
X-Google-Smtp-Source: AGHT+IHuGy2PAR6LUZFTnTeDHSWaUL6jNLMgwJAzgYUtFLFbwLTtQwWLTrP/mKUObDudTAIAWi7eCA==
X-Received: by 2002:a17:90a:e7cd:b0:280:cd5f:bf90 with SMTP id
 kb13-20020a17090ae7cd00b00280cd5fbf90mr2048236pjb.23.1700816493873; 
 Fri, 24 Nov 2023 01:01:33 -0800 (PST)
Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com.
 [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id
 bo21-20020a17090b091500b002809822545dsm2484401pjb.32.2023.11.24.01.01.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 24 Nov 2023 01:01:33 -0800 (PST)
Content-Language: en-US
In-Reply-To: <83jzq7fx5o.fsf@gnu.org>
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" <bug-gnu-emacs.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/bug-gnu-emacs>,
 <mailto:bug-gnu-emacs-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/bug-gnu-emacs>
List-Post: <mailto:bug-gnu-emacs@gnu.org>
List-Help: <mailto:bug-gnu-emacs-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/bug-gnu-emacs>,
 <mailto:bug-gnu-emacs-request@gnu.org?subject=subscribe>
Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org
Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org
Xref: news.gmane.io gmane.emacs.bugs:274848
Archived-At: <http://permalink.gmane.org/gmane.emacs.bugs/274848>

Thanks for taking a look, Eli. Just a few questions/thoughts on some of 
your comments. (I trimmed the others since I'll probably rework the 
other sections based on how we handle the second part below.)

On 11/23/2023 11:06 PM, Eli Zaretskii wrote:
> FWIW, I find the use of "overshadows" in the original text to be
> better than the "overrides" in the new text.  This is partly because
> the meaning of "override" is not clear when talking about the use of a
> name, and partly because "override" is really inaccurate here.  If we
> are not happy with the original text, then we need to find something
> else, IMO, perhaps a more detailed description.

Maybe we should just leave it as is for now? I don't think it's strictly 
necessary to change that sentence for the rest of the patch to make 
sense. We could always improve it in a follow up.

(Or if someone has the perfect phrase to use here, I'll happily make the 
change. I just don't want the patch to get bogged down by changes that 
are merely *near* the parts I'm working on.)

>> +As we discussed before, under lexical binding, @code{let} defines a
>> +@emph{place} in your code where the variables have their own local
>> +meaning.  Under dynamic binding, the rules are different: instead, you
>> +are defining a @emph{time} in your code when the variables have their
>> +own local meaning.
> 
> If this wants to explain the difference between compile-time and
> run-time binding, then perhaps it should say so, instead of talking
> about the confusing "place where" vs "time when" the value changes?
> And if compile-time is problematic (Emacs being an interpreter), then
> we should find another description, one that doesn't use confusing
> concept of "place".

I'm open to other wordings, but I wanted to describe what's going on 
without getting into the details of the interpreter or how it evaluates 
the code. The "place" is supposed to refer to the actual body of the 
'let' form. That's described in the first part I changed. However, the 
"time" description could probably be expanded.

Maybe we could contrast "within the body of the let expression" vs 
"during execution of the let expression"? That gets across the idea to 
me that the former is about compile-time ("body" refers to the actual 
Lisp form), while the latter is about run-time ("execution").