Subject: bug#34481: 27.0.50; cl-flet, cl-labels and lambda expressions

From: Michael Heerdegen <[email-masked]>
Date: Tue, 19 Feb 2019 02:03:28 +0100

Michael Heerdegen <[email-masked]> writes:

> 2.  `cl-labels' doesn't allow expressions evaluating to functions.  But
> I think we could allow lambda expressions.  Seems this would not even be
> hard to do: the macro constructs a lambda expression anyway (if we do
> this, we should take care of the edebug spec as well).  Oh - why I want
> this?  Just a matter of taste, I just prefer a lambda expression to the
> (FUNC ARGLIST BODY...) syntax.

Another reason why I got used to prefer lambda expressions, also for
cl-flet, is because elisp-mode indents the (FUNC ARGLIST BODY...) case
so badly:

(cl-labels ((f (x y z)
               (* x y z))))
vs.

(cl-labels ((f (lambda (x y z)
                 (* x y z)))))

Michael.