help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How do I pass a variable defined in a wrapping let, to a lambda?


From: Emanuel Berg
Subject: Re: How do I pass a variable defined in a wrapping let, to a lambda?
Date: Sat, 12 Mar 2022 01:58:38 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

>> Darn -- I thought I understood lexical-binding
>
> Same :(

With static/lexical scope a function within a `let' is
a closure:

(let ((f 2))
  (defun two ()
    f) )
(two) ; 2

But with dynamic/special scope it isn't:

(let ((f 1))
  (defun one ()
    f) )
(one) ; Symbol’s value as variable is void: f

Same with lambdas - they are anonymous functions.

-- 
underground experts united
https://dataswamp.org/~incal




reply via email to

[Prev in Thread] Current Thread [Next in Thread]