From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Emanuel Berg Newsgroups: gmane.emacs.help Subject: Re: Mutation - do you understand it really? Date: Wed, 18 Jan 2023 11:58:01 +0100 Message-ID: <87lem0yurq.fsf@dataswamp.org> References: <87lenh7vrn.fsf@web.de> <87tu25d77o.fsf@gnu.org> <87h6y5pt8k.fsf@web.de> <87bkodpqnk.fsf@web.de> <87k030tlfh.fsf@web.de> <87ilikxgkd.fsf@web.de> <87y1rf1txv.fsf@gnu.org> <87pmcrkt8z.fsf@web.de> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="24486"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:11KCnLXXvE7DdtBipQBAP8OhhnM= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jan 19 12:32:49 2023 Return-path: Envelope-to: geh-help-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 ) id 1pITA1-0006Ag-6J for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 19 Jan 2023 12:32:49 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pIT9h-0007XR-Ig; Thu, 19 Jan 2023 06:32:29 -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 ) id 1pI690-0006kU-TG for help-gnu-emacs@gnu.org; Wed, 18 Jan 2023 05:58:14 -0500 Original-Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pI68z-0004gN-7Q for help-gnu-emacs@gnu.org; Wed, 18 Jan 2023 05:58:14 -0500 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1pI68w-0000m3-NK for help-gnu-emacs@gnu.org; Wed, 18 Jan 2023 11:58:10 +0100 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: help-gnu-emacs@gnu.org Mail-Copies-To: never Received-SPF: pass client-ip=116.202.254.214; envelope-from=geh-help-gnu-emacs@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -15 X-Spam_score: -1.6 X-Spam_bar: - X-Spam_report: (-1.6 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.25, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Thu, 19 Jan 2023 06:32:28 -0500 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:142398 Archived-At: Michael Heerdegen wrote: >> Immutable variables are just a lot better behaved (and >> easier to work with for the compiler, which is why >> GCC/LLVM/... use an SSA conversion to replace those nasty >> mutable variables with immutable ones). > > The original question used `setq'. I presented it to > a friend that knows lambda calculus and Haskell very well, > but Lisp not at all. A mathematician who has learned one computer language (Haskell) and pretends to be unable to/takes pride in not ever doing it again? > When he asked "what does this setq do" and I gave an answer > he was shocked Okay, but what did you say then? > that these bindings are mutual in Lisp and his reaction was > like "WTF?...Ok, then...". First the variables are mutable, now the bindings are mutual ... Symbols can have values, that value can change so it's mutable, but the symbol can be assigned something else (or nothing), so that's mutable as well. It's all mutable, that's what you mean? So when you compile you don't do that, instead generate a new one for each time the binding is reassociated? -- underground experts united https://dataswamp.org/~incal