bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#34708: alist-get has unclear documentation


From: Miguel V. S. Frasson
Subject: bug#34708: alist-get has unclear documentation
Date: Sun, 3 Mar 2019 08:32:45 -0300

Hi

I think the sentence below is a good and short explanation for the doc-string.

The return value can be conveniently used as a generalized variable (a place) to set the value associated with KEY in ALIST, like in the example
 (setf (alist-get key alist) new-value)

Miguel 


Em sáb, 2 de mar de 2019 15:10, Michael Heerdegen <michael_heerdegen@web.de> escreveu:
"Miguel V. S. Frasson" <mvsfrasson@gmail.com> writes:

> I can't imagine how to *set* anything with alist-get. It seams to me
> that it just use the value of ALIST for look up, so talk about
> generalized variables is meaningless to me here.

You use it like this: say variable V is bound to an alist, then you can
do (setf (alist-get key V) value).  After that, (alist-get key V) will
evaluate to VALUE, so you have "set" that place.  In the general case, V
can also be a generalized variable, e.g. (car SOMETHING-ELSE).

To replace the word "this" with something better is not so easy.  We
could write "The name of this function can be used to build expressions
that can be used as a generalized variable", but I doubt it will make
things clearer for somebody not familiar with the concept of generalized
variables.  Using this function name to build place expressions is not
different from using other function names that allow to be used for
generalized variables.

I would rather go with an example, which I think is justified because
using this function name in place expressions is the canonical way to
modify alists and people need to use it (there is no `alist-put') no
matter if they are familiar with generalized variables.

Michael.



reply via email to

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