From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 14 20:57:23 2023 Received: (at submit) by debbugs.gnu.org; 15 Nov 2023 01:57:23 +0000 Received: from localhost ([127.0.0.1]:34399 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r359f-0007PH-6b for submit@debbugs.gnu.org; Tue, 14 Nov 2023 20:57:23 -0500 Received: from lists.gnu.org ([2001:470:142::17]:48294) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r32dT-000314-Dy for submit@debbugs.gnu.org; Tue, 14 Nov 2023 18:16:00 -0500 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 ) id 1r32cg-00083y-0U for bug-gnu-emacs@gnu.org; Tue, 14 Nov 2023 18:15:10 -0500 Received: from mail-pg1-x530.google.com ([2607:f8b0:4864:20::530]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r32cd-0008Gf-2B for bug-gnu-emacs@gnu.org; Tue, 14 Nov 2023 18:15:09 -0500 Received: by mail-pg1-x530.google.com with SMTP id 41be03b00d2f7-5a9bf4fbd3fso4974217a12.1 for ; Tue, 14 Nov 2023 15:15:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700003705; x=1700608505; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=FX6x16x0SjUYz4SLDw/REqg2azsZMsPdMasr8Z/qpmo=; b=AgLRTcDSgjFn1ppZcBbjj+Sn7R3c4bIu9ZjJ3dwAXNN6IShkvGvuw3sY9pgejOU6PT G0L6B9chjBxJdNtfjQhoMFzsnnmlCChuRLEE25L0ncCVEtLhjBZbAVO379ufagsTXxfw Js6vVivb5POTPjFr6iSL5LzJ+ahyhm+O0XFokTMjVO9klPRE7MJeUi8nIv1nNoX8AKwE sC+0LFKUFfUBaIxpTXJWVt1AAFxc2K7Vh6dFBQEzTSgaluU0yU4oGNMNz93ud563HBJc xdC8ecOaAyU1F7rixNcD/N+p72Zph2mbDdjmy2owX2sXSf/tNsWy0H9FanbGSvqpO9Vu XcwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700003705; x=1700608505; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=FX6x16x0SjUYz4SLDw/REqg2azsZMsPdMasr8Z/qpmo=; b=SWPCDxJkH+9Pm5Sr7QSNQtXSFut5QUK0QmmMbfeNXP0i+Hs7vzhH1QwKctjhdCXd9j 930BCJOaPxJ4IQ3B3Rb1pT7mNcghO65Se5cUsjAgdom+lnJUZPGo7OFF+l1jbleEGBoD x8a+3C+YHWU0DlloPL7Y900AhyFm7JuOthR7eqRvNaKmaBUjk5aQKNVcZfzTm+oxQBse imQjdouQyvaL3AVQsxVE8/E1m4soGxHtSQoWzYcc9Wu/YZHfc7yK8UkHs4ByH3YvZNaP 6yPKi0lA3SDQ4kLK2fR8HlPAsldjb485zVosqTuj1IhVh9mIPKPioNeMemLls/dlyXvq VqCg== X-Gm-Message-State: AOJu0Ywn5VejKsuRPISNfeiHznucvlSUGDWaTgGE12GQjSeq7vi7J4zh pHtspV7ByOs1WjCVwtdLR8bCuV4Mq922M3tRZmfyGlSjvoE= X-Google-Smtp-Source: AGHT+IGWnmc5fQ10DdA1Pq88FHAjrqlk2N+zWNPdSqroO+9aOSbZV45XPVbUR8PE7+CL2QC/u5FhPgqcrRYtRAGiJ6E= X-Received: by 2002:a17:90b:3a8d:b0:27d:a0e5:2a67 with SMTP id om13-20020a17090b3a8d00b0027da0e52a67mr10795780pjb.18.1700003704569; Tue, 14 Nov 2023 15:15:04 -0800 (PST) MIME-Version: 1.0 From: Ryan Hodges Date: Tue, 14 Nov 2023 15:14:53 -0800 Message-ID: Subject: Small bug in the Introduction to Elisp manual To: bug-gnu-emacs@gnu.org Content-Type: multipart/alternative; boundary="000000000000ed8449060a24f4c7" Received-SPF: pass client-ip=2607:f8b0:4864:20::530; envelope-from=rphodges@gmail.com; helo=mail-pg1-x530.google.com 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Tue, 14 Nov 2023 20:57:16 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --000000000000ed8449060a24f4c7 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable In section '8.2.2 Lisp macro' it says, "The =E2=80=98kill-region=E2=80=99 function definition also has an =E2=80= =98unless=E2=80=99 macro; it is the converse of =E2=80=98when=E2=80=99. The =E2=80=98unless=E2=80=99 ma= cro is an =E2=80=98if=E2=80=99 without a then clause" Instead of saying "converse of 'when'" it should say "inverse of 'when'." Also, that statement about 'unless' being an 'if' without a 'then' clause tripped me up. I thought you were trying to say that the 'unless' form didn't have a then clause, which isn't correct. Then I thought the point you were really trying to make was that the unless form, like when, doesn't have an 'else' clause. Now that I've read the corresponding section in the reference manual I know what you mean. I think we should borrow the examples from the reference manual to make it clear and also emphasize that 'unless' is a convenient mechanism for evaluating multiple statements when a condition is not true. Maybe the text should be: "The kill-region function definition also has an 'unless' macro. It is the inverse of 'when'. The form, (unless CONDITION A B C) is equivalent to the form (when (not (CONDITION)) A B C) The 'unless' form is ideal in situations when multiple expressions should be evaluated when a condition is not true. The 'unless' macro can also be viewed as an 'if' which does nothing in the 'then' clause but evaluates one or more statements in the 'else' clause. In particular, (unless CONDITION A B C) is equivalent to the form, (if CONDITION nil A B C) In other words, if CONDITION is true, the form does nothing. Otherwise, when CONDITION is false, the form evaluates 'A B C'. If you approve of the text or provide me more accurate phrasing, I'll gladly submit a patch. I also understand if you think I'm being a little too verbose. Regards, Ryan Hodges --000000000000ed8449060a24f4c7 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
In section '8.2.2 Lisp macro' it says,=C2=A0
<= br>
"The =E2=80=98kill-region=E2=80=99 function definition also ha= s an =E2=80=98unless=E2=80=99 macro; it
is the converse of =E2=80=98wh= en=E2=80=99.=C2=A0 The =E2=80=98unless=E2=80=99 macro is an =E2=80=98if=E2= =80=99 without a then=C2=A0clause"

Instead of sayi= ng "converse of 'when'" it should say "inverse of &#= 39;when'." Also, that statement about 'unless' being an &#= 39;if' without a 'then' clause tripped me up. I thought you wer= e trying to say that the 'unless' form didn't have a then claus= e, which isn't correct.=C2=A0 Then I thought the point you were really = trying to make was that the unless form, like when, doesn't have an = 9;else' clause.=C2=A0 =C2=A0=C2=A0

Now that I&= #39;ve read the=C2=A0corresponding section in the reference manual I know w= hat=C2=A0you=C2=A0mean.=C2=A0 =C2=A0I think we should borrow the examples f= rom the reference manual=C2=A0 to make it clear and also emphasize that = 9;unless' is a convenient mechanism=C2=A0for evaluating multiple statem= ents when a condition is not true.
=C2=A0
Maybe the tex= t should be:

"The kill-region function definition a= lso has an 'unless' macro. It is the inverse of 'when'. The= form,=C2=A0
(unless CONDITION A B C)
is equival= ent to the form
(when (not (CONDITION)) A B C)
The 'unless&= #39; form is ideal in situations when multiple expressions should be evalua= ted when a condition is not true. The 'unless' macro can also be vi= ewed as an 'if' which does nothing in the 'then' clause but= evaluates one or more statements in the 'else' clause.=C2=A0 In pa= rticular,
= (unless CONDITION A B C)
is equivalent to the form,
(if CONDITION n= il A B C)
In other words, if CONDITION is true, the form = does nothing.=C2=A0 Otherwise, when CONDITION is false, the form evaluates = 'A B C'.

If you= approve of the text or provide me=C2=A0more accurate=C2=A0phrasing, I'= ll gladly submit a patch.=C2=A0 I also understand if you think I'm bein= g a little too verbose.=C2=A0=C2=A0

Regards,
<= div>Ryan Hodges
--000000000000ed8449060a24f4c7-- From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 15 11:28:08 2023 Received: (at 67185) by debbugs.gnu.org; 15 Nov 2023 16:28:08 +0000 Received: from localhost ([127.0.0.1]:53118 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3IkJ-00027o-MN for submit@debbugs.gnu.org; Wed, 15 Nov 2023 11:28:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:58120) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3IQi-0001QS-AX for 67185@debbugs.gnu.org; Wed, 15 Nov 2023 11:07:52 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r3Eqc-0005p5-Ro; Wed, 15 Nov 2023 07:18:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=SG/cUNbVdKHSfDI2r58v22Ynr8L5HoXJmjKWn+laH0w=; b=BU98oZ0sk4QEsKu8zTtA IxV6xAfarEhsU6MLcPpTDk+K+m/GN5L1uDf/df9CVyPUVAnIG3I/rSNRIxoH5pCx0JbNv5UgYFCAH R8mv37KHvgHW7+JJRkwe86NAUJmzEGcePhvFxe0X2mb4DEwuWtgVlUBq0tgnHyp8HkoOQCasM1tn/ ZVJrY6NSXOhq1vqakFO3AYftKzgh5tlY6E8DnSy68bv1ZaBveLxtKbJ5JYlsVaKHZH8iup1DaJJOz KyerbZPACfsA+HomWPjJVK00TcBuvXlClfTZ/67PgyhRAWFQ6x9jewgxUmo1QB1I0e8eczg6TuIK9 RgtpRpUG8Dgzcw==; Date: Wed, 15 Nov 2023 14:18:06 +0200 Message-Id: <83edgrrz0h.fsf@gnu.org> From: Eli Zaretskii To: Ryan Hodges , Richard Stallman In-Reply-To: (message from Ryan Hodges on Tue, 14 Nov 2023 15:14:53 -0800) Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual References: MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67185 Cc: 67185@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Ryan Hodges > Date: Tue, 14 Nov 2023 15:14:53 -0800 > > In section '8.2.2 Lisp macro' it says, > > "The ‘kill-region’ function definition also has an ‘unless’ macro; it > is the converse of ‘when’. The ‘unless’ macro is an ‘if’ without a then clause" > > Instead of saying "converse of 'when'" it should say "inverse of > 'when'." I'm not a native English speaker, but "converse" sounds correct to me in this context. > Also, that statement about > 'unless' being an 'if' without a 'then' clause tripped me up. I thought you were trying to say that the > 'unless' form didn't have a then clause, which isn't correct. Then I thought the point you were really > trying to make was that the unless form, like when, doesn't have an 'else' clause. No, it says it doesn't have "then", i.e. it only have the "else" part. Which sounds fine to me. > Now that I've read the corresponding section in the reference manual I know what you mean. I think > we should borrow the examples from the reference manual to make it clear and also emphasize that > 'unless' is a convenient mechanism for evaluating multiple statements when a condition is not true. > > Maybe the text should be: > > "The kill-region function definition also has an 'unless' macro. It is the inverse of 'when'. The > form, > > (unless CONDITION A B C) > > is equivalent to the form > > (when (not (CONDITION)) A B C) > > The 'unless' form is ideal in situations when multiple expressions should be evaluated when a > condition is not true. The 'unless' macro can also be viewed as an 'if' which does nothing in the > 'then' clause but evaluates one or more statements in the 'else' clause. In particular, > > (unless CONDITION A B C) > > is equivalent to the form, > > (if CONDITION nil A B C) > > In other words, if CONDITION is true, the form does nothing. Otherwise, when CONDITION is > false, the form evaluates 'A B C'. > > If you approve of the text or provide me more accurate phrasing, I'll gladly submit a patch. I also > understand if you think I'm being a little too verbose. This manual was written by a person whose command of the English language and whose methodological skill are exceptional. So I'm adding Richard to this discussion, and ask him to judge this text, and whether it needs to be improved and how. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 15 14:33:15 2023 Received: (at 67185) by debbugs.gnu.org; 15 Nov 2023 19:33:15 +0000 Received: from localhost ([127.0.0.1]:53843 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3LdT-0001Js-0j for submit@debbugs.gnu.org; Wed, 15 Nov 2023 14:33:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41422) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3LdN-0001Jb-AB for 67185@debbugs.gnu.org; Wed, 15 Nov 2023 14:33:12 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r3LdI-0006tU-N9; Wed, 15 Nov 2023 14:33:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=elDc/0i52n8pBaDdJUQ4g5vkNFDEuVzk4BSVh7CeWIw=; b=gDGg4hKNtLvTk7H/Gg3l IiEtGCUJl7NHGukEXmmOLUJq6B5RND984Zm7wDBTam7V9fLzYDtdy94EZ7f2EIPTrDtZas/4uvwwQ vXi14D7H6g4ZxYk7OmT5QtxvV1RogagZZrbGr4tqntEEcjqgfa/GHBKEdlkWxGzFyh+p97GDWzG/Q 82OOCNOwIXxbD0WNxpU61RrwHAB3lcecReojgbqICl6OMCjzwb3rszTJhapItclfKZUY4kyErmh5l B48vNcdydjnreMdPoI60Jn//dDpAVY+RGR5vYv2FLBF2O5003btJuj5NIdh/MGiubzOidK3TK54fO OWXazate3oz2NA==; Date: Wed, 15 Nov 2023 21:32:08 +0200 Message-Id: <837cmirex3.fsf@gnu.org> From: Eli Zaretskii To: Ryan Hodges In-Reply-To: (message from Ryan Hodges on Wed, 15 Nov 2023 09:58:11 -0800) Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual References: <83edgrrz0h.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67185 Cc: 67185@debbugs.gnu.org, Richard Stallman X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [Please use Reply All to reply, so that everyone is CC'ed.] > From: Ryan Hodges > Date: Wed, 15 Nov 2023 09:58:11 -0800 > > On Wed, Nov 15, 2023 at 4:18 AM Eli Zaretskii wrote: > > > From: Ryan Hodges > > Date: Tue, 14 Nov 2023 15:14:53 -0800 > > > > In section '8.2.2 Lisp macro' it says, > > > > "The ‘kill-region’ function definition also has an ‘unless’ macro; it > > is the converse of ‘when’. The ‘unless’ macro is an ‘if’ without a then clause" > > > > Instead of saying "converse of 'when'" it should say "inverse of > > 'when'." > > I'm not a native English speaker, but "converse" sounds correct to me > in this context. > > 'converse' means to reverse the order of. Not necessarily, at least not according to the dictionaries I see. For example (https://www.collinsdictionary.com/us/dictionary/english/converse): The converse of a statement is its opposite or reverse. Or (https://dictionary.cambridge.org/dictionary/english/converse): the opposite: . In the US, you drive on the right-hand side of the road, but in the UK the converse applies. . However, the converse of this theory may also be true. > No, it says it doesn't have "then", i.e. it only have the "else" part. > Which sounds fine to me. > > Earlier in the document, 'when' is described as an 'if' statement without an 'else' clause. That makes > sense to me. The 'else' clause is completely optional. i.e the 'if' form below does not have an 'else' > > (if (> 5 4) 'true) > > In this section of the document we are describing an 'if' without a 'then'. That didn't make sense to me > because the 'then' clause is a mandatory argument. It can be 'nil' but it's still mandatory. AFAIU, the text attempts to explain 'when' and 'unless' in terms if 'if', and it doesn't try to be rigorously correct, but rather to be intuitively understandable by people who may not be programmers or have a mathematical background. So "if without then" might not make sense to someone who has the "if" syntax burnt into his/her muscle memory, but it does make sense if you consider that "if" has a "then" block and an "else" block, and "unless" executes the "else" block of the condition. So this is why I asked Richard to review this text and your comments. From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 15 15:18:46 2023 Received: (at 67185) by debbugs.gnu.org; 15 Nov 2023 20:18:46 +0000 Received: from localhost ([127.0.0.1]:53885 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3MLW-0002ri-5K for submit@debbugs.gnu.org; Wed, 15 Nov 2023 15:18:46 -0500 Received: from mail-pj1-x102a.google.com ([2607:f8b0:4864:20::102a]:46158) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3MLQ-0002rN-EH for 67185@debbugs.gnu.org; Wed, 15 Nov 2023 15:18:45 -0500 Received: by mail-pj1-x102a.google.com with SMTP id 98e67ed59e1d1-280200949c3so777155a91.0 for <67185@debbugs.gnu.org>; Wed, 15 Nov 2023 12:18:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700079515; x=1700684315; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=QppkznTDy444vYZKeCPoYVed0Wds8epHDkhCAfTLUtc=; b=flDj9dTo2FYkchu7WtP926k4nXVCBsQ082Pejq5Q1Sb6KThbI9MsXdvZOKHnx25wny 5/XZWFEoyAkDltjB+8H/XmJUH67uwDvoriBazOX27ytzkoWrYpTIsqU2efB+NCmZaCfb xihgmBqSOZdCuf9X6KKSUJUUJVfsx7cyLb3JmTB7NqIk63FeQsul4HvLxIkUSqO8X2Lx 7I0SLe0gxjps0IumKy8nFDiMwEPfOkVFFUUnu9DQMjIUqcgkyZaBIoEZjbbtcHhS0gYt X2GWXgQBwfXmGZhs85BNJODjpgF//IVBMGLo9lY9SHzdHcNbf95s6HWJxQVjlXARb5hh avBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700079515; x=1700684315; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=QppkznTDy444vYZKeCPoYVed0Wds8epHDkhCAfTLUtc=; b=qqQIXzrC4qPT5wFp1bD8tXRu4p+sZqcs4vQj6s7BK8A0lW/m7AdP7chK7s9UIbq/Vu N6MZEHb2yhIvhAeOihgirlUtLQ4PcT5XjDmWcEyG0qtpE6sNN3jyGoPfvakQIGKROAC+ IgVDA3Ir/PCW5OAsq4nCEVljDAJMU0yi6qWrACF+CN63NDpsT9pHNv7zJM234dxS2xYC SMN4XLU7O/TKdimpxQJl/q7dNnIzibP/0SeL2rEM7+gbbK8NqEZNAzsmvlBbuNiFkTvq OMmlJyb6eQiadHMf1MRzftKjUTVT3ym2/8vzKPw0vvnsC6dq0Kjy0RUKQyYwGtNuluTQ S5jg== X-Gm-Message-State: AOJu0Yy/07L+Ag9/STAlnKaFENBmOZaohHqgZFBTu8m7gU6iWcJ4+bRp +GW2xwqtEYTcjQ+s0bXUdj6lu81E6wHZwhB0QcI= X-Google-Smtp-Source: AGHT+IFDmIvrtksFjQmPJ2/EfNupve5PG10kSZBNVHh6oTh7yLInMr9xIvUWbrFkIhaSYMN18Hf+hrCRLF1Cdg+Qkro= X-Received: by 2002:a17:90b:1c8c:b0:280:cc2b:d5be with SMTP id oo12-20020a17090b1c8c00b00280cc2bd5bemr12774469pjb.15.1700079514988; Wed, 15 Nov 2023 12:18:34 -0800 (PST) MIME-Version: 1.0 References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> In-Reply-To: <837cmirex3.fsf@gnu.org> From: Ryan Hodges Date: Wed, 15 Nov 2023 12:18:23 -0800 Message-ID: Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual To: Eli Zaretskii Content-Type: multipart/alternative; boundary="00000000000094b575060a369ba4" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67185 Cc: 67185@debbugs.gnu.org, Richard Stallman X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000094b575060a369ba4 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Eli, Thanks for the reply. I can see where you're going with the word 'converse'. I'm not hung up on it but I think it could use a little clarification on what we mean by "opposite of 'when'". If you decide the manual warrants a tweak and you want me to take a crack at it, let me know. Otherwise, I appreciate your time. Cheers, Ryan Hodges On Wed, Nov 15, 2023 at 11:33=E2=80=AFAM Eli Zaretskii wrote= : > [Please use Reply All to reply, so that everyone is CC'ed.] > > > From: Ryan Hodges > > Date: Wed, 15 Nov 2023 09:58:11 -0800 > > > > On Wed, Nov 15, 2023 at 4:18=E2=80=AFAM Eli Zaretskii wr= ote: > > > > > From: Ryan Hodges > > > Date: Tue, 14 Nov 2023 15:14:53 -0800 > > > > > > In section '8.2.2 Lisp macro' it says, > > > > > > "The =E2=80=98kill-region=E2=80=99 function definition also has an = =E2=80=98unless=E2=80=99 macro; it > > > is the converse of =E2=80=98when=E2=80=99. The =E2=80=98unless=E2= =80=99 macro is an =E2=80=98if=E2=80=99 without a > then clause" > > > > > > Instead of saying "converse of 'when'" it should say "inverse of > > > 'when'." > > > > I'm not a native English speaker, but "converse" sounds correct to me > > in this context. > > > > 'converse' means to reverse the order of. > > Not necessarily, at least not according to the dictionaries I see. For > example > (https://www.collinsdictionary.com/us/dictionary/english/converse): > > The converse of a statement is its opposite or reverse. > > Or (https://dictionary.cambridge.org/dictionary/english/converse): > > the opposite: > . In the US, you drive on the right-hand side of the road, but in the > UK the converse applies. > . However, the converse of this theory may also be true. > > > No, it says it doesn't have "then", i.e. it only have the "else" part. > > Which sounds fine to me. > > > > Earlier in the document, 'when' is described as an 'if' statement > without an 'else' clause. That makes > > sense to me. The 'else' clause is completely optional. i.e the 'if' > form below does not have an 'else' > > > > (if (> 5 4) 'true) > > > > In this section of the document we are describing an 'if' without a > 'then'. That didn't make sense to me > > because the 'then' clause is a mandatory argument. It can be 'nil' but > it's still mandatory. > > AFAIU, the text attempts to explain 'when' and 'unless' in terms if > 'if', and it doesn't try to be rigorously correct, but rather to be > intuitively understandable by people who may not be programmers or > have a mathematical background. So "if without then" might not make > sense to someone who has the "if" syntax burnt into his/her muscle > memory, but it does make sense if you consider that "if" has a "then" > block and an "else" block, and "unless" executes the "else" block of > the condition. > > So this is why I asked Richard to review this text and your comments. > --00000000000094b575060a369ba4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Eli,
Thanks for the reply.=C2=A0 I can see where= you're going with the word 'converse'.=C2=A0 I'm not hung = up on it but I think it could use a little clarification on what we mean by= "opposite of 'when'".

If you decide the manual wa= rrants a tweak and you want me to take a crack at it, let me know.=C2=A0 Ot= herwise, I appreciate your time.

Cheers,
Ryan = Hodges

=C2=A0=C2=A0

On Wed, Nov 15, 2023 at 11:33=E2=80=AFAM El= i Zaretskii <eliz@gnu.org> wrote:=
[Please use Rep= ly All to reply, so that everyone is CC'ed.]

> From: Ryan Hodges <rphodges@gmail.com>
> Date: Wed, 15 Nov 2023 09:58:11 -0800
>
> On Wed, Nov 15, 2023 at 4:18=E2=80=AFAM Eli Zaretskii <eliz@gnu.org> wrote:
>
>=C2=A0 > From: Ryan Hodges <rphodges@gmail.com>
>=C2=A0 > Date: Tue, 14 Nov 2023 15:14:53 -0800
>=C2=A0 >
>=C2=A0 > In section '8.2.2 Lisp macro' it says,
>=C2=A0 >
>=C2=A0 >=C2=A0 "The =E2=80=98kill-region=E2=80=99 function defi= nition also has an =E2=80=98unless=E2=80=99 macro; it
>=C2=A0 >=C2=A0 is the converse of =E2=80=98when=E2=80=99.=C2=A0 The = =E2=80=98unless=E2=80=99 macro is an =E2=80=98if=E2=80=99 without a then cl= ause"
>=C2=A0 >
>=C2=A0 > Instead of saying "converse of 'when'" it= should say "inverse of
>=C2=A0 > 'when'."
>
>=C2=A0 I'm not a native English speaker, but "converse" s= ounds correct to me
>=C2=A0 in this context.
>
> 'converse'=C2=A0 means to reverse the order of.

Not necessarily, at least not=C2=A0 according to the dictionaries I see.=C2= =A0 For example
(https://www.collinsdictionary.com/u= s/dictionary/english/converse):

=C2=A0 =C2=A0The converse of a statement is its opposite or reverse.

Or (https://dictionary.cambridge.org/dic= tionary/english/converse):

=C2=A0 the opposite:
=C2=A0 =C2=A0 . In the US, you drive on the right-hand side of the road, bu= t in the UK the converse applies.
=C2=A0 =C2=A0 . However, the converse of this theory may also be true.

>=C2=A0 No, it says it doesn't have "then", i.e. it only h= ave the "else" part.
>=C2=A0 Which sounds fine to me.
>
> Earlier in the document, 'when' is described as an 'if'= ; statement without an 'else' clause.=C2=A0 That makes
> sense to me.=C2=A0 The 'else' clause is completely optional.= =C2=A0 i.e the 'if' form below does not have an 'else'
>
> (if (> 5 4) 'true)
>
> In this section of the document we are describing an 'if' with= out a 'then'.=C2=A0 That didn't make sense to me
> because the 'then' clause is a mandatory argument.=C2=A0 It ca= n be 'nil' but it's still mandatory.

AFAIU, the text attempts to explain 'when' and 'unless' in = terms if
'if', and it doesn't try to be rigorously correct, but rather t= o be
intuitively understandable by people who may not be programmers or
have a mathematical background. So "if without then" might not ma= ke
sense to someone who has the "if" syntax burnt into his/her muscl= e
memory, but it does make sense if you consider that "if" has a &q= uot;then"
block and an "else" block, and "unless" executes the &q= uot;else" block of
the condition.

So this is why I asked Richard to review this text and your comments.
--00000000000094b575060a369ba4-- From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 16 22:56:40 2023 Received: (at 67185) by debbugs.gnu.org; 17 Nov 2023 03:56:40 +0000 Received: from localhost ([127.0.0.1]:44955 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3pyB-0003Dc-CH for submit@debbugs.gnu.org; Thu, 16 Nov 2023 22:56:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34450) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3py6-0003DF-Op for 67185@debbugs.gnu.org; Thu, 16 Nov 2023 22:56:38 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r3py1-0008Bo-C3; Thu, 16 Nov 2023 22:56:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=KxBbda8LoiJwmISZ7TdnG4GBbrCAmTtOKRacZjWXOcA=; b=Mt8zV+1++VrY xd3RQshdZ4eAS8EbV1t1nta2ozEY858PK3Zm4eoggpCNJu3yZCwLgR/4vbBH1DcY14YQNF5W9S5yl KCSgdyhuNma2bIRMpO0i3uNISgO4sEICEt2uir/IL7SZSwZKFfDsrSY5cpj+FE945qoXnaEXCNCLQ gp7XDnF70vqVQTvMB3Wpj69jlajA3VmuD5zkqToHcnNLpCfFgMQ5wQS70DiyDvaSQIShrL9sKyxHk 3PSXHVOB6JI2Gdp7hUxYjf6DpoFWhesD0JDg0lvpVtPO5creuF9J1b+CWMPgH/5YHbViAECXcpF9i Fpyjx7DGuvD+CPJDLhYPiw==; Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1r3py1-0000OG-3T; Thu, 16 Nov 2023 22:56:29 -0500 Content-Type: text/plain; charset=Utf-8 From: Richard Stallman To: Ryan Hodges In-Reply-To: (message from Ryan Hodges on Wed, 15 Nov 2023 12:18:23 -0800) Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> Message-Id: Date: Thu, 16 Nov 2023 22:56:29 -0500 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67185 Cc: eliz@gnu.org, 67185@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: rms@gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] We should use logical terms such as "converse" only in the strictly correct logical sense. "Converse" is not correct here. "Inverse" also has a specific mathematical meaning, which doesn't fit here. What should se use here? I think "opposite" is the best word. > > > "The ‘kill-region’ function definition also has an ‘unless’ macro; it > > > is the opposite of ‘when’. If people are asking me to review more of the text, would someone please send me the entire passage I whoudl review? -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 17 02:19:24 2023 Received: (at 67185) by debbugs.gnu.org; 17 Nov 2023 07:19:25 +0000 Received: from localhost ([127.0.0.1]:45016 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3t8O-0001Oy-KS for submit@debbugs.gnu.org; Fri, 17 Nov 2023 02:19:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52574) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3t8L-0001Oh-OJ for 67185@debbugs.gnu.org; Fri, 17 Nov 2023 02:19:23 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r3t8G-0005Oc-5f; Fri, 17 Nov 2023 02:19:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=bfnOJtTyVbccEFb9X1vfdQHDoAZ1Mt04qTTkTN/kIrk=; b=LDLIyafXkC2pcdcyjLGr y44zjmxcd92nWsZKTx4C7Xj9c7xowgTmguZMk6mA8ty9sdXDm7MpD9PlnungsCeoP1wx6+3plfqVU iZHORcJvBad/998fZuEl4oEf3+2AVUV0y9KFOWjy6kCiiAxcCC1ea1e0dAEV3SOii1/R5Pq1XBPGs M4hlkX0q4Kak7iMpRL5PqRF+KhmOhV/Cd+3bKfvWVEnsgZKDyefpKUmmIjUC5ot/Hw+LYcFciO6Gs 1Tm98svzaINfE7MQLz6LfwGwfFTb5ruO0H7+urpW6VCg3Ns5sCRym615JRenttds1sKKOOQc6rkiu fvdPgU91wPX0Ow==; Date: Fri, 17 Nov 2023 09:19:01 +0200 Message-Id: <837cmgq23e.fsf@gnu.org> From: Eli Zaretskii To: rms@gnu.org In-Reply-To: (message from Richard Stallman on Thu, 16 Nov 2023 22:56:29 -0500) Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67185 Cc: rphodges@gmail.com, 67185@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Richard Stallman > Cc: eliz@gnu.org, 67185@debbugs.gnu.org > Date: Thu, 16 Nov 2023 22:56:29 -0500 > > We should use logical terms such as "converse" only in the strictly correct > logical sense. "Converse" is not correct here. > > "Inverse" also has a specific mathematical meaning, which doesn't fit > here. > > What should se use here? I think "opposite" is the best word. That manual uses "converse" and "conversely" about half a dozen times: are all of them incorrect, and actually mean "opposite" or maybe "by contrast"? > > > > "The ‘kill-region’ function definition also has an ‘unless’ macro; it > > > > is the opposite of ‘when’. > > If people are asking me to review more of the text, would someone please > send me the entire passage I whoudl review? The passage was in the original message. I reproduce its Texinfo source below: The @code{kill-region} function definition also has an @code{unless} macro; it is the converse of @code{when}. The @code{unless} macro is an @code{if} without a then clause From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 17 08:23:07 2023 Received: (at 67185) by debbugs.gnu.org; 17 Nov 2023 13:23:07 +0000 Received: from localhost ([127.0.0.1]:45557 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3yoL-0000Lu-F1 for submit@debbugs.gnu.org; Fri, 17 Nov 2023 08:23:07 -0500 Received: from mail-pg1-x532.google.com ([2607:f8b0:4864:20::532]:55804) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r3yo4-0000Kz-Vk for 67185@debbugs.gnu.org; Fri, 17 Nov 2023 08:23:04 -0500 Received: by mail-pg1-x532.google.com with SMTP id 41be03b00d2f7-5bdbe2de25fso1553602a12.3 for <67185@debbugs.gnu.org>; Fri, 17 Nov 2023 05:22:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700227363; x=1700832163; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Dp17XmV+gLtW0GYwmR5TMmBEAIPabxjHHO/8cjS1jYc=; b=OdmW9UgpXOrUVQmZ38fjVU5Z+yNM44rcDwgr/lK3VzLjj/TV6MhhEXHXzQtwa+WGz/ hvf563hc23sk5fGLD9ceHtqP4AOXwPb4zMKalCy5yFuP+Tp7IXsg9e0AYRGkJA1MdbBh r9YaAMvxKzp9dWId0cnflFllbivHRmO4cQ8E6mWtHnzoS24zp4BPOVLpcsaRTd3yZD7G aGvbIw98ADkKdgCNO8NVs1vQTeGaOV9poOyvzXsRDUnz1GBT39XLmwdSvbMh67VDSDfL TtHRnhcNFGYpUB3swcGSo5RMZlcqCquwfIAfyEQZrpBChrPvB7YQC3srUo9oNAxHurJe ktSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700227363; x=1700832163; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Dp17XmV+gLtW0GYwmR5TMmBEAIPabxjHHO/8cjS1jYc=; b=wXajjF3u31ZJGjIqVSVC1370AuEd7jcmJ5NHG8UnUFD8qzKUP+yBlhGxIToHBZa5kL xAJ8x9tYjd3mRpa2WQqfLsOb2ILRGMsBXAZalEbB+0q26/9i9Vl5VFwARx+RcblURc87 fhE8rfnxZ+WxR0KIN+uwSCiWCSgrPw11EJ/F2O/zkgzGAPGfEqyO6GCQYKVLf2MBNTtC uhU3nZvtYBoNzyQuyPb7/zP3bm5+VZl6TnyMEEpYD+V8LJQfWL0gF1YAtvBOP+fjijKa h0HypG6U9hX/jvpu7PRVUEoWbNHa4QZRQwywY6O0HQL7LPs9DntFmrRQCoBVPe1dN14C 9BgA== X-Gm-Message-State: AOJu0YxdJNFF/infSrk2RiCYfHSWPucV7urAaZf5CwdByLp+LMq+c1ME 9VAoAfyzc5D4kjzq9hMgSvAqp67oFIunZ5E+M8M= X-Google-Smtp-Source: AGHT+IH3ZiOhCWV/iGw5ppOavaSkChzNOYiKpBj/9ywMDJOPZM0cmDpGljOTVBjuNrCAbVOKgiQ0doc66m4acTTZ8Hk= X-Received: by 2002:a17:90a:72c5:b0:280:1d67:16a6 with SMTP id l5-20020a17090a72c500b002801d6716a6mr21197423pjk.34.1700227362710; Fri, 17 Nov 2023 05:22:42 -0800 (PST) MIME-Version: 1.0 References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> <837cmgq23e.fsf@gnu.org> In-Reply-To: <837cmgq23e.fsf@gnu.org> From: Ryan Hodges Date: Fri, 17 Nov 2023 05:22:31 -0800 Message-ID: Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual To: Eli Zaretskii Content-Type: multipart/alternative; boundary="000000000000fde9e0060a590773" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 67185 Cc: 67185@debbugs.gnu.org, rms@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000fde9e0060a590773 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable My position would be that the word 'conversely' is probably ok in those cases where it is used. However the word 'converse', especially when talkin= g about conditional relationships, needs to change. I only see one such case, the one we're talking about here. My biggest complaint wasn't about the use of the word 'converse'. Instead, it was the explanation of 'unless' as an 'if without a then'. I think it needs to explain that it is an 'if without a then but with an else that is populated with the expressions from the then block of the unless statement. An example like the one in the Lisp Reference Manual would bring it home. I'll include that change in my patch and you can decide whether it's appropriate.. Regards, Ryan Hodges On Thu, Nov 16, 2023 at 11:19=E2=80=AFPM Eli Zaretskii wrote= : > > From: Richard Stallman > > Cc: eliz@gnu.org, 67185@debbugs.gnu.org > > Date: Thu, 16 Nov 2023 22:56:29 -0500 > > > > We should use logical terms such as "converse" only in the strictly > correct > > logical sense. "Converse" is not correct here. > > > > "Inverse" also has a specific mathematical meaning, which doesn't fit > > here. > > > > What should se use here? I think "opposite" is the best word. > > That manual uses "converse" and "conversely" about half a dozen times: > are all of them incorrect, and actually mean "opposite" or maybe "by > contrast"? > > > > > > "The =E2=80=98kill-region=E2=80=99 function definition also has= an =E2=80=98unless=E2=80=99 > macro; it > > > > > is the opposite of =E2=80=98when=E2=80=99. > > > > If people are asking me to review more of the text, would someone pleas= e > > send me the entire passage I whoudl review? > > The passage was in the original message. I reproduce its Texinfo > source below: > > The @code{kill-region} function definition also has an @code{unless} > macro; it is the converse of @code{when}. The @code{unless} macro is > an @code{if} without a then clause > --000000000000fde9e0060a590773 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
My position would be that the word 'conversely' is= probably ok in those
cases where it is used. However the word 'conv= erse', especially when talking
about conditional relationships, nee= ds to change. I only see one such case, the one we're talking about her= e.=C2=A0=C2=A0

My biggest complaint wasn't about the use of the= word 'converse'.=C2=A0 Instead, it
was the explanation of '= unless' as an 'if without a then'. I think it needs to
expla= in that it is an 'if without a then but with an else that is populated<= br>with the expressions from the then block of the unless statement.=C2=A0 = An example
like the one in the Lisp Reference Manual would bring it home= . I'll include
that change in my patch and you can decide whether it= 's appropriate..

Regards,
Ryan Hodges<= /div>


On Thu, Nov 16, 2023 at 11:19=E2=80=AFPM El= i Zaretskii <eliz@gnu.org> wrote:=
> From: Rich= ard Stallman <rms@gnu.o= rg>
> Cc: eliz@gnu.org= , 67185@debbugs.= gnu.org
> Date: Thu, 16 Nov 2023 22:56:29 -0500
>
> We should use logical terms such as "converse" only in the s= trictly correct
> logical sense.=C2=A0 "Converse" is not correct here.
>
> "Inverse" also has a specific mathematical meaning, which do= esn't fit
> here.
>
> What should se use here?=C2=A0 I think "opposite" is the bes= t word.

That manual uses "converse" and "conversely" about half= a dozen times:
are all of them incorrect, and actually mean "opposite" or maybe = "by
contrast"?

> > >=C2=A0 >=C2=A0 "The =E2=80=98kill-region=E2=80=99 fun= ction definition also has an =E2=80=98unless=E2=80=99 macro; it
> > >=C2=A0 >=C2=A0 is the opposite of =E2=80=98when=E2=80=99.<= br> >
> If people are asking me to review more of the text, would someone plea= se
> send me the entire passage I whoudl review?

The passage was in the original message.=C2=A0 I reproduce its Texinfo
source below:

=C2=A0 The @code{kill-region} function definition also has an @code{unless}=
=C2=A0 macro; it is the converse of @code{when}.=C2=A0 The @code{unless} ma= cro is
=C2=A0 an @code{if} without a then clause
--000000000000fde9e0060a590773-- From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 18 22:40:53 2023 Received: (at 67185) by debbugs.gnu.org; 19 Nov 2023 03:40:53 +0000 Received: from localhost ([127.0.0.1]:49719 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4Yg1-0006R1-66 for submit@debbugs.gnu.org; Sat, 18 Nov 2023 22:40:53 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:47498) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4Yfy-0006Qn-Kd for 67185@debbugs.gnu.org; Sat, 18 Nov 2023 22:40:51 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r4Yfs-0000bP-25; Sat, 18 Nov 2023 22:40:44 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=C4LASLFDWqL+K7zFRj0YDmEvisUgj8LpPqCSFjUnPi4=; b=RBC5f66tm/Wu mIlbekpFHmk2YO02kj/FNK0fXSRYQfsdu8WkRJoMw0IfqeikR5xuXRyKA9XaCokYQ/VykJKPc0ARK VUOcGRWV0KaLwevxqyiuwhKgofqlTEmdVYzzknn1IHGMHYXYrEQrdwlsqKn0ydpGuUpSUWOq6Y+ad UmiWkwtj9bF87FdtvBZZo84hnyKJnBruIlix4F6S1cRvIFUx603bKavUBBq5UbTQpPxmRwP4B5trw rpY/wtdZpJzBqNqR1FErbzqwmpfO49kAOE+ZTK5O9ZfD/Vp2l+YBTD97l/eM6jlabHLNBRSQFp0FV d0k1PK9UbYCQyRPYT7kvcw==; Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1r4Yfr-0006gM-O5; Sat, 18 Nov 2023 22:40:43 -0500 Content-Type: text/plain; charset=Utf-8 From: Richard Stallman To: Eli Zaretskii In-Reply-To: <837cmgq23e.fsf@gnu.org> (message from Eli Zaretskii on Fri, 17 Nov 2023 09:19:01 +0200) Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> <837cmgq23e.fsf@gnu.org> Message-Id: Date: Sat, 18 Nov 2023 22:40:43 -0500 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67185 Cc: rphodges@gmail.com, 67185@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: rms@gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > That manual uses "converse" and "conversely" about half a dozen times: > are all of them incorrect, and actually mean "opposite" or maybe "by > contrast"? I checked these, and I think they are correct. Each one is about reversing the direction of some relation, and "converse" means that/ > The @code{kill-region} function definition also has an @code{unless} > macro; it is the converse of @code{when}. That should say "opposite". It's opposite because in the situation where `when' runs its body, `unless' does not run its body. The @code{unless} macro is > an @code{if} without a then clause The point is valid if understood in a figurative sense -- so the words need to indicate it is meant figuratively, not literally. How to do that? Maybe this: The @code{unless} macro is like an @code{if} except that it has no then-clause, and it supplies an implicit @code{nil} for that. -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 19 05:16:54 2023 Received: (at 67185-done) by debbugs.gnu.org; 19 Nov 2023 10:16:55 +0000 Received: from localhost ([127.0.0.1]:50078 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4erG-0006WI-F1 for submit@debbugs.gnu.org; Sun, 19 Nov 2023 05:16:54 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:32812) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4erF-0006W3-F2 for 67185-done@debbugs.gnu.org; Sun, 19 Nov 2023 05:16:53 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r4er8-00054P-8v; Sun, 19 Nov 2023 05:16:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=d0/OUwL7TZKz+oNyGHMYPTWgnAI9cBKC+k1A6jVu1VA=; b=CWXoAZm0YzZ7 pMpWHlvhRJXPEK6D7fs+lo3EmawPL+i+Xth6/zCaTKFVSgmbaq7RYxzjL6Gwuy96FYvJmZwJ8g+7E 2DsWqpWKylDbxr/hziAK2UympTpCPRyhIZIdMa3pcGuSXbpDMIgGvuzFWf582hata/82EU8RG5Zfe 1bLY5u/10kfiebwP/yjnqWR0kZZ/bK2vKC6mOF6J8YCJnbrdyTIjJSkK20S6OWaZMcCHgFilAMZx7 k59C79EX1gUf5lyfcs7nh0OqMZtPVi2XMSzel48HOpUufUSEovUY43awzVhKpSvwzZCXSedo9fom+ 849tUSqu2WvOIv3lYOgWqQ==; Date: Sun, 19 Nov 2023 12:16:13 +0200 Message-Id: <834jhikpzm.fsf@gnu.org> From: Eli Zaretskii To: rms@gnu.org In-Reply-To: (message from Richard Stallman on Sat, 18 Nov 2023 22:40:43 -0500) Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> <837cmgq23e.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67185-done Cc: rphodges@gmail.com, 67185-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Richard Stallman > Cc: rphodges@gmail.com, 67185@debbugs.gnu.org > Date: Sat, 18 Nov 2023 22:40:43 -0500 > > > That manual uses "converse" and "conversely" about half a dozen times: > > are all of them incorrect, and actually mean "opposite" or maybe "by > > contrast"? > > I checked these, and I think they are correct. Each one is about reversing > the direction of some relation, and "converse" means that/ > > > The @code{kill-region} function definition also has an @code{unless} > > macro; it is the converse of @code{when}. > > That should say "opposite". It's opposite because in the situation > where `when' runs its body, `unless' does not run its body. > > The @code{unless} macro is > > an @code{if} without a then clause > > The point is valid if understood in a figurative sense -- so the > words need to indicate it is meant figuratively, not literally. How > to do that? Maybe this: > > The @code{unless} macro is > like an @code{if} except that it has no then-clause, and it supplies > an implicit @code{nil} for that. Thanks, I fixed these two places as you suggested, and I'm therefore closing this bug. From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 19 14:01:54 2023 Received: (at 67185-done) by debbugs.gnu.org; 19 Nov 2023 19:01:54 +0000 Received: from localhost ([127.0.0.1]:52095 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4n3K-0000zz-94 for submit@debbugs.gnu.org; Sun, 19 Nov 2023 14:01:54 -0500 Received: from mail-pj1-x102c.google.com ([2607:f8b0:4864:20::102c]:60718) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4n3H-0000zm-Ui for 67185-done@debbugs.gnu.org; Sun, 19 Nov 2023 14:01:53 -0500 Received: by mail-pj1-x102c.google.com with SMTP id 98e67ed59e1d1-2809414efa9so2809684a91.1 for <67185-done@debbugs.gnu.org>; Sun, 19 Nov 2023 11:01:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700420504; x=1701025304; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=M9HuYWRrBJTtlqBp/48chyRQmbHgj9lyFcGK21f2kbU=; b=dTwVElohPt9mdomUFSMXPWDOxf52XS1ct+r9kdb5XN97RqiPGlwbSLE7lcu/+WxUGQ pkKZjGRVUdg8bH1vyU/7fL2ZJoYHFhTiKAn2U9N098/fJXmr4QKUfXHnkktXrcnDWawg VfR5jLjswN4QfcPQ/bIxdYXDEALFRdsOfJtZFnn8hlaEWjcWwQF6IDidb6sgIKQRxvVB dnBXqgO6N09iUb+cvS31jHQ6jAoqw6td9RvFBd8IAEpk73CdFWSWEHGDjgZNgIRjvBAN GgIC4WFXZhE8vDYkfOuu5dJjDaGIp7V978a5lbvKyyGJ2HzCUFHIqOL1n3RoXJpPywNz j7rw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700420504; x=1701025304; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=M9HuYWRrBJTtlqBp/48chyRQmbHgj9lyFcGK21f2kbU=; b=Qe6WP6dI2P+SpP2rjCC6HUm1/ur1snG7YPfyJnRJGtftFi9v8gmo04PmiZ7O9QxoKO Vw8p57YjwZ3yqVx/aeZpGylGO5Gx/VjU5C8XNcNS7FiwykAXiToPXjBPN0OrUhebqxf5 e60tj9UwffwIT3WMLD628hw2mfKynnfQ3BNUVL/5H97F00Cs0wgBZcuiuPxNDInY0U2Q YxJZf+Akpe4/95Sv1JkoSci9/iS/xEWNeLfQlQp39egxUKQN0TfkmuHCMGfDrRtbhiej UNjzkUxA9FbfDOmUP77xOoyXB3xH70RUEot87x+NhOA5O6TazCzSJJjnJht8vWZoNTqO ZBBQ== X-Gm-Message-State: AOJu0YxP0PtqtQwN1YQnayjb7S7uNonwVuetvHvQ8AZ9IqCJGrRYYoTu 1tuSGAeF24qv0NeXZFJlHdBAPW8TeuJlChLA1F4= X-Google-Smtp-Source: AGHT+IFwVn7hUrPN8IC5cm5Sm9Lv4Se6Q7Fa7WVIEArsPFK3XZdjgRMcQKVOmvfUQdBq9Hp4oRvTQRAHjKAMLO38WNw= X-Received: by 2002:a17:90a:c504:b0:27c:efe3:89dc with SMTP id k4-20020a17090ac50400b0027cefe389dcmr3463896pjt.14.1700420504295; Sun, 19 Nov 2023 11:01:44 -0800 (PST) MIME-Version: 1.0 References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> <837cmgq23e.fsf@gnu.org> <834jhikpzm.fsf@gnu.org> In-Reply-To: <834jhikpzm.fsf@gnu.org> From: Ryan Hodges Date: Sun, 19 Nov 2023 11:01:33 -0800 Message-ID: Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual To: Eli Zaretskii Content-Type: multipart/alternative; boundary="000000000000209f7d060a8600dd" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67185-done Cc: 67185-done@debbugs.gnu.org, rms@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000209f7d060a8600dd Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Thank you both. After I finish learning Elisp, I hope I can make some real contributions. Cheers, Ryan Hodges On Sun, Nov 19, 2023 at 2:16=E2=80=AFAM Eli Zaretskii wrote: > > From: Richard Stallman > > Cc: rphodges@gmail.com, 67185@debbugs.gnu.org > > Date: Sat, 18 Nov 2023 22:40:43 -0500 > > > > > That manual uses "converse" and "conversely" about half a dozen > times: > > > are all of them incorrect, and actually mean "opposite" or maybe "b= y > > > contrast"? > > > > I checked these, and I think they are correct. Each one is about > reversing > > the direction of some relation, and "converse" means that/ > > > > > The @code{kill-region} function definition also has an > @code{unless} > > > macro; it is the converse of @code{when}. > > > > That should say "opposite". It's opposite because in the situation > > where `when' runs its body, `unless' does not run its body. > > > > The @code{unless} macr= o > is > > > an @code{if} without a then clause > > > > The point is valid if understood in a figurative sense -- so the > > words need to indicate it is meant figuratively, not literally. How > > to do that? Maybe this: > > > > The @code{unless} macr= o > is > > like an @code{if} except that it has no then-clause, and it suppli= es > > an implicit @code{nil} for that. > > Thanks, I fixed these two places as you suggested, and I'm therefore > closing this bug. > --000000000000209f7d060a8600dd Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thank you both.=C2=A0 After I finish learning Elisp, I hop= e I can make some real contributions.

Cheers,
= Ryan Hodges

On Sun, Nov 19, 2023 at 2:16=E2=80=AFAM Eli Zaretskii <= eliz@gnu.org> wrote:
> From: Richard Stallman <= ;rms@gnu.org>
> Cc: rphodges@g= mail.com, 67= 185@debbugs.gnu.org
> Date: Sat, 18 Nov 2023 22:40:43 -0500
>
>=C2=A0 =C2=A0> That manual uses "converse" and "conve= rsely" about half a dozen times:
>=C2=A0 =C2=A0> are all of them incorrect, and actually mean "op= posite" or maybe "by
>=C2=A0 =C2=A0> contrast"?
>
> I checked these, and I think they are correct.=C2=A0 Each one is about= reversing
> the direction of some relation, and "converse" means that/ >
>=C2=A0 =C2=A0 =C2=A0> The @code{kill-region} function definition als= o has an @code{unless}
>=C2=A0 =C2=A0 =C2=A0> macro; it is the converse of @code{when}.
>
> That should say "opposite".=C2=A0 It's opposite because = in the situation
> where `when' runs its body, `unless' does not run its body. >
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 The @code{unless} macro is
>=C2=A0 =C2=A0 =C2=A0> an @code{if} without a then clause
>
> The point is valid if understood in a figurative sense -- so the
> words need to indicate it is meant figuratively, not literally.=C2=A0 = How
> to do that?=C2=A0 Maybe this:
>
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 The @code{unless} macro is
>=C2=A0 =C2=A0 =C2=A0 like an @code{if} except that it has no then-claus= e, and it supplies
>=C2=A0 =C2=A0 =C2=A0 an implicit @code{nil} for that.

Thanks, I fixed these two places as you suggested, and I'm therefore closing this bug.
--000000000000209f7d060a8600dd-- From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 20 21:42:17 2023 Received: (at 67185-done) by debbugs.gnu.org; 21 Nov 2023 02:42:17 +0000 Received: from localhost ([127.0.0.1]:54872 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r5GiP-0007cy-AT for submit@debbugs.gnu.org; Mon, 20 Nov 2023 21:42:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42168) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r5GiL-0007cj-RX for 67185-done@debbugs.gnu.org; Mon, 20 Nov 2023 21:42:15 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r5GiE-0006Jq-1n; Mon, 20 Nov 2023 21:42:06 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=myccLTI3Jghsx+kMmJG9qWJOcIRwQCKPgsl2QFCVQkM=; b=ilipcYRLTSb3 dAyANoLuMUsZinYM6FRvqXaibgHS1RCZDrT+h5BIC6eM1BRZl9lE8XViHgIwGWuPedWgR0BKzdn8I mVe78xlBvbe9sxgrT1rRjUjUYcqz4uRMhcFh+6Ra/Ytxzt/F1MWu2SFQiUanodPGjeQMFonxdTvrH JsUDBYgTi1W5JbduSI6TmPMOwKkdo3FhflNORSYSGLzeQWjDGgn4iCuc08gSwAgu0j36I0oMd+4Qg /7JoQUG7xlEW2lH4Ws0RWJHieMi/AVChkFGGFEwaMqH67fpxSOPMdm69Ps/rOg0bXwlMOC4DLdxi7 h8Rdd93hsJ2fb6lYPsVZIw==; Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1r5GiB-0007cX-4o; Mon, 20 Nov 2023 21:42:03 -0500 Content-Type: text/plain; charset=Utf-8 From: Richard Stallman To: Ryan Hodges In-Reply-To: (message from Ryan Hodges on Sun, 19 Nov 2023 11:01:33 -0800) Subject: Re: bug#67185: Small bug in the Introduction to Elisp manual References: <83edgrrz0h.fsf@gnu.org> <837cmirex3.fsf@gnu.org> <837cmgq23e.fsf@gnu.org> <834jhikpzm.fsf@gnu.org> Message-Id: Date: Mon, 20 Nov 2023 21:42:03 -0500 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67185-done Cc: eliz@gnu.org, 67185-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: rms@gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] Thanks for helping to improve documentation. It is a very important task and only a few people put much effort into it. -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) From unknown Sun Jun 22 11:41:13 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 19 Dec 2023 12:24:09 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator