On 3 November 2013 04:38, Leo Liu wrote: > On 2013-11-02 23:27 +0800, Bozhidar Batsov wrote: > > I've attached a patch for your consideration. > > Personally I think such one-liners won't be of much use. The designer of > the hash table API would have considered such use cases and decided to > rule them out for good reasons. > I think this is the wrong kind of reasoning. The fact that something exists (or doesn't exist) doesn't mean necessary that it was carefully thought through. In the end of the day everyone makes design mistakes from time to time. I guess the original reasoning was to provide as minimalistic API as possible (or more likely - the API was modelled after Common Lisp, which doesn't feature those functions as well). APIs, however, should evolve and designers should always take account the way the API is actually used by its clients. Common Lisp doesn't have those functions, either, but they're included in the Alexandria library, that most Common Lisp projects use. The Common Lisp core is beyond extension for various unfortunate reasons, but Emacs is not... As I've originally said - I can't recall another programming language that doesn't have such methods in its standard library. > > Maybe start out as your personal project and see how people react to it > first? WDYT? > I've seen these functions inlined quite often into Emacs packages - obviously people use them. Don't think that a research paper is needed to warrant the demand for their inclusion. :-) Plus, as Stefan said - other non-essential utilities might be moved to the same library. > > Leo >