emacs-devel
[Top][All Lists]
Advanced

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

Re: Why is FUNC in cl-callf not allowed to be an expression?


From: Michael Heerdegen
Subject: Re: Why is FUNC in cl-callf not allowed to be an expression?
Date: Thu, 16 May 2019 04:18:53 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

Michael Heerdegen <address@hidden> writes:

> A better name for this might be "gv-place-let", though that could be
> confused with "gv-letplace".

I played with it a bit.  It may make sense to make this "gv-place-let"
accept a binding list and implement a "gv-place-let*".  Here are two
examples where this would be useful:

(let ((x '(2 . 1)))
  (gv-place-let a (car x)
    (gv-place-let b (cdr x)
      (when (< b a) (cl-rotatef a b))))
  x)

==> (1 . 2)

(let ((l '(1 (2 3) 4)))
  (gv-place-let p1 (nth 1 l)
    (gv-place-let p2 (car p1)
      (setq p2 (list p2 (- p2)))))
  l)
==> (1 ((2 -2) 3) 4)


Michael.



reply via email to

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