From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: Some improvements for cl-flet Date: Sat, 09 Oct 2021 19:33:41 -0400 Message-ID: References: <87bl4zqnqn.fsf@gmail.com> <87czpe4rj2.fsf@web.de> <874kaqqxe7.fsf@gmail.com> <87y281cowz.fsf@web.de> <87sfxdr2ds.fsf@gmail.com> <877demdb5w.fsf@gmail.com> Reply-To: rms@gnu.org Content-Type: text/plain; charset=Utf-8 Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="31808"; mail-complaints-to="usenet@ciao.gmane.io" Cc: michael_heerdegen@web.de, monnier@iro.umontreal.ca, emacs-devel@gnu.org To: akater Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Oct 10 01:36:13 2021 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 1mZLsz-00088y-EH for ged-emacs-devel@m.gmane-mx.org; Sun, 10 Oct 2021 01:36:13 +0200 Original-Received: from localhost ([::1]:59356 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mZLsy-000060-HR for ged-emacs-devel@m.gmane-mx.org; Sat, 09 Oct 2021 19:36:12 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51824) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mZLqZ-0005Pi-Jp for emacs-devel@gnu.org; Sat, 09 Oct 2021 19:33:43 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:37246) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mZLqY-0004ZI-PT; Sat, 09 Oct 2021 19:33:42 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1mZLqX-0002ou-PW; Sat, 09 Oct 2021 19:33:42 -0400 In-Reply-To: <877demdb5w.fsf@gmail.com> (message from akater on Sat, 09 Oct 2021 05:23:07 +0000) 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:276627 Archived-At: [[[ 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. ]]] > People largely agree that with-slots is beneficial, for example. with-slots > wouldn't be possible without symbol-macrolet. `with-slots' seems unnecessary to me too -- at least, to implement it this way. Why not just bind the local variables to the contents of the slots, and copy the variables' values back into OBJECT before exiting? That would give bad results in some asynchronous operations, where reading and writing slots may need to be atomic. But that is a rare thing to do in Emacs Lisp. On those rare occasions one could make the code clear by explicitly accessing the slots. Is making those rare occasions' code simpler (by hiding how it works) enough reason to have `with-slots'? -- 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)