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: Another question about lambdas Date: Wed, 18 Jan 2023 12:33:27 +0100 Message-ID: <87a62gyt4o.fsf@dataswamp.org> References: <87tu23kw9x.fsf@web.de> <861qp67wgm.fsf@gnu.org> <87wn6yyflc.fsf@web.de> <871qp5o05o.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="11682"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:LRQneCL7UISQ7QlFByx2ZAC3CKs= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jan 19 12:37:32 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 1pITEZ-0002qI-TT for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 19 Jan 2023 12:37:31 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pITEO-0002Go-KK; Thu, 19 Jan 2023 06:37:21 -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 1pI6hM-0003vj-5I for help-gnu-emacs@gnu.org; Wed, 18 Jan 2023 06:33:50 -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 1pI6hI-0007G9-LC for help-gnu-emacs@gnu.org; Wed, 18 Jan 2023 06:33:43 -0500 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1pI6hF-0006HS-Er for help-gnu-emacs@gnu.org; Wed, 18 Jan 2023 12:33:37 +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: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, 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:37:19 -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:142402 Archived-At: Michael Heerdegen wrote: > At university I learned that lexical binding would be more > intuitive to understand, but harder to implement. I thought > I was special because I always found dynamic binding more > intuitive. I thought it was because I learned Lisp mostly by > using Emacs, at a time where lexical binding was only > available using a strange thing called `lexical-let' (AFAIR > you had to require cl to use it). It's just how those `let' behaves, one only complicates matter by speaking of dynamic vs lexical scope in general. Have a `dlet' and a `llet' and both would be easy to understand with no need to theorize, at least not to understand them, it can be interesting for other reasons ... And yes, the lexical one would be more intuitive since it's in line with all the data hiding/encapsulation/sandboxing stuff one has been up to longe before one heard those buzzwords ... I mean, why do we have all this f(x) and g() { x } notation in programming if it is, or can be, actually the same x as some x outside of that? Just looking at it, and writing it, tells me, "hey, this is an x of it's own". But with dynamic scope it sometimes isn't and you have to look somewhere else, execute code in your head etc to find out. (With `let' it's actually the other way around but it's just the other side of thinking the same thing, with `let', i.e., the lexical one, it's "those x stays here".) > And a lot have their problems with lexical binding > and closures. What do you mean, what's up with them? -- underground experts united https://dataswamp.org/~incal