On Mon, Jul 26, 2021 at 3:04 AM Marc Nieper-Wißkirchen <xxxxxx@nieper-wisskirchen.de> wrote:

I've also added make-dict to create an empty dictionary from a DTD and a comparator, and dict-copy, which can be based on it.

That's not the Right Thing. The comparator is an implementation detail of some types of dictionaries.

As an object passed to an implementation-specific constructor, yes.  But all dictionaries must have an equality predicate, and in practice all of them except purely sequential dictionaries (lists) must have either an ordering predicate or a hash function that can be applied to the keys.