[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


Well, if we assume an implementation in which the lexical-binding
problems have been solved (as we must in these discussions, I guess) I
must admit that both forms look about equally "elegant", since they are
nearly identical.  I have three reasons for preferring the DO form:

1. A lingering feeling that MAP forms are flaky and are generally to be
avoided, probably left over from the days in which the binding issues
were not worked out.  So this is not terribly rational, but it's still a
pretty strong aversion with me.

2. A lingering feeling that MAP forms are inherently less efficient,
since they require an extra function call.  Of course, a sufficiently
wily compiler could eliminate this call, but I bet that the inefficiency
will be showing up in a lot of implementations for some time to come.

3. Perhaps strongest: the observation that we have gone to DO-SYMBOL,
etc., and that we should try to use the same style everywhere.  (I hope
that this will not lead to the counter-proposal that we should go to
MAP-forms everywhere, but I probably hope in vain.)

I guess I'm not adamant about this, but for the reasons listed above I
would prefer the DO-HASH form.

-- Scott