[Top][All Lists]

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

Re: [Emacs-diffs] master 4612b2a 1/2: Implement and-let*

From: Mark Oteiza
Subject: Re: [Emacs-diffs] master 4612b2a 1/2: Implement and-let*
Date: Tue, 12 Sep 2017 13:29:58 -0400
User-agent: Mutt/1.9.0 (2017-09-02)

On 12/09/17 at 01:21pm, Stefan Monnier wrote:
> >     (internal--build-binding-value-form): Extend to account for
> >     solitary symbols and (EXPR) items in binding varlist.
> We're forced to accept those forms in `let` and `let*` for historical
> reasons, but why do we want to also accept them in newer constructs?

Solitary symbols are expanded as x -> (x (and PREV x)), so it's not the
historical behavior.  (EXPR) means EXPR is an s-expression, which
doesn't make sense in let or let*, e.g.:

   (let (x)
     (and-let* (((null x))) "it's null"))

reply via email to

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