I have a scheme related question, how can we implement let* as a lambda expression. To be more precise, I am not wondering about the "regular" let, but the let with * which lets us use one let expression within another.
相关问题
- Why wrapping a function into a lambda potentially
- Generating powerset in one function, no explicit r
- Check if tie in count of lists using linq
- What is fixed point?
- C# to VB - How do I convert this anonymous method
相关文章
- Why doesn't C11 support lambda functions
- Is there something like the threading macro from C
- Learning F#: What books using other programming la
- Creating a list of functions using a loop in R
- Does learning one Lisp help in learning the other?
- Will java allow to use functional interfaces as me
- Detect if C++ lambda can be converted to function
- What is the definition of “natural recursion”?
The
let*
form is a series of nestedlambda
s. For example, this:Is equivalent to this:
Since you are not wondering about the 'regular'
let
, if alet*
can be converted intolet
then you will have your answer. Therefore know that:is equivalent to:
(see R5RS, page 44,
(define-syntax let* ...)
). Now, given this, and knowledge that:is equivalent to:
the 'expansion' of the
let*
that I showed above becomes: