On Fri, Sep 11, 2015 at 12:00 PM, Taylan Ulrich Bayırlı/Kammer <xxxxxx@gmail.com> wrote:
 
Obviously the better (best?) name for this is hash-table-pop!.  It's
unfortunate that this conflicts with Gauche, but shouldn't one use

    (pop! (hash-table-ref ht k) x)

for popping from a generic place, obviating the need for any *-pop!
operations specialized for different data structures?

Yes, that would be a good name.

The syntax is fine, but shouldn't be relied upon to exist.  At a minimum, there should be a procedural interface.
 
OK, that's less efficient.  I would question how often that difference
in efficiency is relevant though.  If we absolutely want the efficient
push/pop then maybe we should name them hash-table-update/pop! and such.
Or let users define that when they want it and leave it out of the spec.

It's O(1) vs. O(N), which quickly matters, especially when it's executed in a loop.