GNU bug report logs -
#75170
add-to-alist: new function
Previous Next
Full log
Message #124 received at 75170 <at> debbugs.gnu.org (full text, mbox):
>>>>> On Tue, 21 Jan 2025 05:33:48 -0500, "Alfred M. Szmidt" <ams <at> gnu.org> said:
Alfred> "Alfred M. Szmidt" <ams <at> gnu.org> writes:
>> map-put! does not work well with alists that are not 'proper':
>>
ELISP> (setq x (list 1 '(2 . 3)))
>> (1 (2 . 3))
>>
>> Why should it work on alists at all? map-put! assumes a map (where is
>> this structure documented? I did not see anything in the Elisp
>> manual), not an alist. Invalid alists will also not work on functions
>> that assume alists.
Alfred> According to M-x describe-package RET map RET:
Alfred> map.el provides generic map-manipulation functions that work on
Alfred> alists, plists, hash-tables, and arrays. All functions are
Alfred> prefixed with "map-".
Alfred> That seems like it cannot possibly work (or very complicated). How do
Alfred> you differetnate between a plist and alist? Order in an alist is
Alfred> important, but not in a plist. Their syntax is exactly the same, how
Alfred> can a insertion function work correctly for that?
map.el assumes that a list that starts with an atom is a plist, and
any other list is an alist. alist-get and assoc obviously disagree.
Robert
--
This bug report was last modified 142 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.