From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: ludo@gnu.org (Ludovic =?iso-8859-1?Q?Court=E8s?=) Newsgroups: gmane.lisp.guile.devel Subject: Re: Changing the signature of =?utf-8?b?4oCYdmhhc2gtYXNzb2PigJk=?= Date: Wed, 21 Jul 2010 01:17:48 +0200 Message-ID: <87iq49n3oj.fsf@gnu.org> References: <87wrszxpx9.fsf@gnu.org> <87oce8e7wa.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: dough.gmane.org 1279667895 18177 80.91.229.12 (20 Jul 2010 23:18:15 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 20 Jul 2010 23:18:15 +0000 (UTC) To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Wed Jul 21 01:18:14 2010 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ObM4g-0002HJ-TK for guile-devel@m.gmane.org; Wed, 21 Jul 2010 01:18:11 +0200 Original-Received: from localhost ([127.0.0.1]:46363 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ObM4f-0003VQ-DA for guile-devel@m.gmane.org; Tue, 20 Jul 2010 19:18:09 -0400 Original-Received: from [140.186.70.92] (port=55375 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ObM4X-0003VA-Gg for guile-devel@gnu.org; Tue, 20 Jul 2010 19:18:02 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1ObM4V-0005aJ-D7 for guile-devel@gnu.org; Tue, 20 Jul 2010 19:18:01 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:53686) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1ObM4V-0005a7-63 for guile-devel@gnu.org; Tue, 20 Jul 2010 19:17:59 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1ObM4T-0002DC-5F for guile-devel@gnu.org; Wed, 21 Jul 2010 01:17:57 +0200 Original-Received: from acces.bordeaux.inria.fr ([193.50.110.5]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 21 Jul 2010 01:17:57 +0200 Original-Received: from ludo by acces.bordeaux.inria.fr with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 21 Jul 2010 01:17:57 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 36 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: acces.bordeaux.inria.fr X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 3 Thermidor an 218 de la =?iso-8859-1?Q?R=E9volution?= X-PGP-Key-ID: 0xEA52ECF4 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 83C4 F8E5 10A3 3B4C 5BEA D15D 77DD 95E2 EA52 ECF4 X-OS: x86_64-unknown-linux-gnu User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) Cancel-Lock: sha1:0bvFqKZ5zZu4aSmdNfAaac9q8CI= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:10711 Archived-At: Hello! ludo@gnu.org (Ludovic Courtès) writes: > I already changed my mind... :-) At the risk of looking silly, I changed again. > ludo@gnu.org (Ludovic Courtès) writes: > >> Indeed, if ‘vhash-assoc’ et al. are changed to return a vhash instead of >> a pair, then we have all that’s needed to do that: > > [...] > >> Thus I’m planning to make that change. [The ‘vhash-fold-matches’ above >> conses at each match whereas the attached one doesn’t, but that’s OK.] > > Thinking more about it, I think I’d rather keep ‘vhash-assoc’ & co. as > they are, and add ‘vhash-assoc*’ & co., which would return a vhash. Commit 927bf5e8cc0af9515797ebab6d9ba162bef23c2a is roughly the original patch. http://git.savannah.gnu.org/cgit/guile.git/commit/?id=927bf5e8cc0af9515797ebab6d9ba162bef23c2a I still think that ‘vhash-assoc*’ could/should be added eventually, but it’s only useful for programs willing to access only *some* of the values associated with a given key, which I expect to be uncommon. Accessing the first value associated with a key (‘vhash-assoc’) or all the values associated with a key (the new ‘vhash-fold*’) seems more common. Thanks, Ludo’.