emacs-devel
[Top][All Lists]
Advanced

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

Re: Replacement for `aput' from obsolete assoc.el?


From: Christopher Schmidt
Subject: Re: Replacement for `aput' from obsolete assoc.el?
Date: Tue, 05 Jun 2012 05:27:22 +0200

Michael Heerdegen <address@hidden> writes:

> But I wonder if there is a simple replacement for `aput' in vanilla
> Emacs?  I don't think so, but maybe I have overseen something.
>
> If not, can we add a new function `assoc-delete-all' to subr.el (which
> would be like `assq-delete-all', but would compare keys with `equal'
> instead of `eq')?  Dunno why this function does not exist yet, but it
> would ease handling alists e.g. if its keys are strings.

You can use the Common Lisp subset provided by cl.*\.el.

    (push '(key . emacs) alist)
    (setf (cdr (assoc 'key alist)) 'rms)
    (setf alist (delete* 'key alist :test 'equal :key 'car))

Starting with GNU Emacs 24.2 you are allowed to use the cl functions in
end-user code.  See <address@hidden> for more
information.

        Christopher



reply via email to

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