[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8126: 23.2; Improvement requests for assoc.el
From: |
Michael Heerdegen |
Subject: |
bug#8126: 23.2; Improvement requests for assoc.el |
Date: |
Sat, 26 Feb 2011 20:39:37 +0100 |
Hello Emacs,
assoc.el, a library providing functions on association lists, is part
of GNU Emacs.
My requests:
1. Please mention this lib in the Elisp Manual.
assoc.el provides some essential elementary functions for alists.
These should be mentioned in the Elisp Manual (at least `aput',
`adelete') under "Association Lists".
2. Please remove the misleading word `sort' from the header
descriptions.
This file doesn't include any function for sorting alists. There is
`asort', but it actually doesn't sort the alist, it only moves an
element with a given KEY to the head of the alist.
3. Most of the functions in this library use `asort' (same file) as a
helper. `asort' uses `sort' only to put a cons cell with a given key
to the head of the alist. This is very inefficient. Thus, `aput',
`adelete', `aget' and `amake' have a bad run-time behavior.
Even worse, `amake' uses `aput', thus sorts the alist built so far in
recursion.
There is a package in apel called "alist.el" which provides very
similar functions. You can use it as a reference.
4. `eval' -> `symbol-value'
All occurrences of `eval' can be replaced with `symbol-value'.
5. There are currently no autoload cookies in "assoc.el". Maybe they
should be added.
Thanks,
Michael.
In GNU Emacs 23.2.1 (i486-pc-linux-gnu, GTK+ Version 2.20.0)
of 2010-12-11 on raven, modified by Debian
Windowing system distributor `The X.Org Foundation', version 11.0.10707000
configured using `configure '--build' 'i486-linux-gnu' '--build'
'i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib'
'--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info'
'--mandir=/usr/share/man' '--with-pop=yes'
'--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.2/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.2/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.2/leim'
'--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars'
'build_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS=''
- bug#8126: 23.2; Improvement requests for assoc.el,
Michael Heerdegen <=